发表于: 2016-12-23 23:55:43
1 2310
今天完成的事情:
mybatis快速入门
1)创建一个mybatis-day01这么一个javaweb工程或java工程
2)导入mybatis和mysql/oracle的jar包到/WEB-INF/lib目录下
3)创建students.sql表
4)创建Student.java
5)在entity目录下创建StudentMapper.xml配置文件
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="mynamespace"> <insert id="add1"> insert into students(id,name,sal) values(1,'哈哈',7000) </insert> <insert id="add2" parameterType="cn.itcast.javaee.mybatis.app05.Student"> insert into students(id,name,sal) values(#{id},#{name},#{sal}) </insert> </mapper> |
6)在src目录下创建mybatis.xml配置文件
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration> <environments default="development"> <environment id="development"> <transactionManager type="JDBC"/> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://127.0.0.1:3306/mybatis"/> <property name="username" value="root"/> <property name="password" value="root"/> </dataSource> </environment> </environments> <mappers> <mapper resource="cn/itcast/javaee/mybatis/app05/StudentMapper.xml"/> </mappers> </configuration> |
7)在util目录下创建MyBatisUtil.java类,并测试与数据库是否能连接
8)在dao目录下创建StudentDao.java类并测试
public void add2(Student student) throws Exception{
SqlSession sqlSession = MyBatisUtil.getSqlSession();
try{
sqlSession.insert("mynamespace.add2",student); //此处即为运用StudentMapper.xml文件
}catch(Exception e){
e.printStackTrace();
sqlSession.rollback();
throw e;
}finally{
sqlSession.commit();
}
MyBatisUtil.closeSqlSession();
}
mybatis工作流程
1)通过Reader对象读取src目录下的mybatis.xml配置文件(该文本的位置和名字可任意)
2)通过SqlSessionFactoryBuilder对象创建SqlSessionFactory对象
3)从当前线程中获取SqlSession对象
4)事务开始,在mybatis中默认
5)通过SqlSession对象读取StudentMapper.xml映射文件中的操作编号,从而读取sql语句
6)事务提交,必写
7)关闭SqlSession对象,并且分开当前线程与SqlSession对象,让GC尽早回收
评论