Mybatis学习(壹)

一、Mybatis的引言

 

1Mybatis框架概念:是数据库持久层的框架,对数据库的访问和操作。MybatisJDBC的封装,Mybatis替换JDBC开发,解决DAO中的通用问题。

2JDBC开发DAO的缺点:

3Mybatis的优点

1)自动的进行ORM,减少冗余代码

2)有缓存机制,提高软件的效率

3)Mybatis提供动态sql,减少DAO方法的开发(select)

4Mybatis的开发原理

 

 

二、第一Mybatis程序

1、搭建Mybatis环境

a、导入jar

Mybatis的核心jar包:mybatis-3.2.2.jar

数据的驱动jarojdbc5.jar

做日志记录:log4j.jar

commons-logging-1.1.3.jar

b、引入配置文件

mybatis-config.xml:配置Mybatis运行环境

放置位置:随意,放在src目录

mapper文件:DAO实现的方法,通过mapper创建DAO

放置位置:随意,放在dao包下

log4j.properties:【可选】打印日志

放置位置:src目录

c、初始化参数配置

mybatis-config.xml中配置mybatis的运行环境

 

2Mybatis的核心API介绍

1)Resources:获得mybatis-config.xml配置文件

2)SqlSession:

作用一:获得DAO的实现类

作用二:内部封装一个Connection,一个SqlSession和一个Connection对象一一对应

作用三:可以事务控制

commit();rollback();

3)SqlSessionFactory:创建SqlSession,重量级

3Mybatis替换JDBC开发DAO的步骤

1)建表

2)实体

3)DAO 的接口

4)Mybatis实现DAO的接口

 

5)注册mapper文件

 

6)测试

 

三、单表的基本操作(一个参数)

 

1、查询所有

模糊查询

2、删除

注意:Mybatis做数据库的DML操作必须进行事务控制(Mybatis的事务默认是回滚)

  sqlSession.commit();/sqlSession.rollback()

 

3、修改

4、添加

使用序列:

insert into t_user values(seq_user.nextval,'yyy','999999')

mysql数据库没有序列:

<insert id="insert" parameterType="com.ibs.api.perf.bean.PerfAmmeter" useGeneratedKeys="true" keyProperty="id">

 

四、MybatisUtil的封装(参考MybatisUtil.java

1、作用:提高代码的服用,提高程序的维护

2serviceSqlSession---DAO+事务控制

dao:调用DAO的方法完成业务

事务控制:SqlSession

获得sqlSession的方法

public static SqlSession getSqlSession(){}

3MybatisUtil工具类封装的原则

1)读取配置文件的操作放在静态代码块中

2)sqlSessionConnection一一对应,SqlSession进行线程绑定

3)SqlSessionFactory是一个重量级的,只需要创建一次,SqlSessionFactory定义为静态成员变量

4、封装关闭SQLSession的方法:把关闭的SQLSession从线程局部变量中移除掉

public static void closeSession(){}

posted @ 2016-10-19 09:40  limeOracle  阅读(246)  评论(0编辑  收藏  举报