Mybaits入门
Mybaits入门
一、先配置主配置文件xml(mybaits-config.xml)
导入mybatis包(这里会链接MySQL数据库所以MySQL包也得导入)
注意:这里创建的实例是java项目
1 <?xml version="1.0" encoding="UTF-8" ?>
2 <!-- 约束 -->
3 <!DOCTYPE configuration
4 PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
5 "http://mybatis.org/dtd/mybatis-3-config.dtd">
6
7 <configuration>
8 <!-- 导入properties 文件 -->
9 <properties resource="db.properties"></properties>
10
11 <!--环境配置(链接数据库) -->
12 <environments default="development">
13 <environment id="development">
14 <!-- 事务控制 -->
15 <transactionManager type="JDBC" />
16 <!-- 数据源 -->
17 <dataSource type="POOLED">
18 <property name="driver" value="${driver}"/>
19 <property name="url" value="${url}"/>
20 <property name="username" value="${username}"/>
21 <property name="password" value="${password}"/>
22 </dataSource>
23 </environment>
24 </environments>
25
26 <!-- 引入映射文件 -->
27
28 <mappers>
29 <mapper resource="mybatis-student.xml"/>
30 </mappers>
31 </configuration>
二、建立properties联系数据源
1 driver=com.mysql.jdbc.Driver
2 url=jdbc:mysql:///bj
3 username=root
4 password=123456
三、配置映射文件(mybatis-student.xml)(增删改查在这里进行)
1 <?xml version="1.0" encoding="UTF-8" ?>
2 <!DOCTYPE mapper
3 PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
4 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
5
6 <mapper namespace="student">
7 <insert id="addstudent" parameterType="org.laogao.pojo.student">
8 insert into student values(#{id},#{name},#{age},#{sex});
9 </insert>
10
11 <delete id="delete" parameterType="org.laogao.pojo.student">
12 delete from student where id=#{id}
13 </delete>
14
15 <update id="updatestudent" parameterType="org.laogao.pojo.student">
16 update student set name=#{name},age=#{age},sex=#{sex} where id=#{id}
17
18
19 </update>
20
21 <select id="showstudent" resultType="org.laogao.pojo.student">
22
23 select * from student
24 </select>
25
26 <select id="showstudentone" resultType="org.laogao.pojo.student" parameterType="org.laogao.pojo.student">
27
28 select * from student where id=#{id}
29
30 </select>
31 </mapper>
四、建立测试类(这种公司里基本不用,但利于新手理解,了解即可)
常用类型请看mybaits进阶
public class TestMybatis {
@Test
//写法用的是JUNIT
public void addstudent() throws IOException{
//解析主配置文件成一个输入流
InputStream stream = Resources.getResourceAsStream("mybaits-config.xml");
//sqlsession工厂
//通过SqlSessionFactoryBuilder.build(stream)构建实例获得SqlSessionFactory
SqlSessionFactory SqlSessionFactory = new SqlSessionFactoryBuilder().build(stream);
//生成sql
SqlSession session = SqlSessionFactory.openSession();
//写一条数据
student student = new student(0, "hp", "12", "nv");
//增加
session.insert("student.addstudent", student);
session.commit();
}
@Test
public void deletestudentbyid() throws Exception{
//解析主配置文件成一个输入流
InputStream stream = Resources.getResourceAsStream("mybaits-config.xml");
SqlSessionFactory SqlSessionFactory = new SqlSessionFactoryBuilder().build(stream);
SqlSession session = SqlSessionFactory.openSession();
session.delete("student.delete", 22);
session.commit();
}
@Test
public void updatestudentnyid() throws Exception{
InputStream stream = Resources.getResourceAsStream("mybaits-config.xml");
SqlSessionFactory SqlSessionFactory = new SqlSessionFactoryBuilder().build(stream);
SqlSession session = SqlSessionFactory.openSession();
student student = new student(15, "sb", "20", "s");
session.update("student.updatestudent", student);
session.commit();
}
@Test
public void showstudent() throws Exception{
InputStream stream = Resources.getResourceAsStream("mybaits-config.xml");
SqlSessionFactory SqlSessionFactory = new SqlSessionFactoryBuilder().build(stream);
SqlSession session = SqlSessionFactory.openSession();
List<student> studentlist=session.selectList("student.showstudent",null);
for (student student : studentlist) {
System.out.println(student.toString());
}
}
@Test
public void showstudentone() throws Exception{
InputStream stream = Resources.getResourceAsStream("mybaits-config.xml");
SqlSessionFactory SqlSessionFactory= new SqlSessionFactoryBuilder().build(stream);
SqlSession session = SqlSessionFactory.openSession();
Object student = session.selectOne("student.showstudentone", 15);
System.out.println(student.toString());
}
}

人生永远无法回头,就连这平淡不惊的一幕,终有一日也会碎落满地

浙公网安备 33010602011771号