Izhuceul 发表于 2016-11-24 01:38:55

MyBatis(-)

刚开始学习Mybatis,试写一个例子:
工程结构
 

 
 
 
映射文件
 

 
 
 

 

 
 
 
测试类:
 

 
 
 
 
理一下流程:
根据配置文件获取到SqlSessionFactory,再通过SqlSessionFactory. openSession()获取到数据库操作对象sqlsession。session.getMapper(UserDao.class)可以得到接口的一个实现类,等到执行实现类中的方法时,会使用JDBC执行配置文件中的sql语句,执行成功后根据返回结果通过反射给实体类设置属性。
 
 
缓存:
<!---->1、  <!---->映射文件中的select语句将会被缓存;
<!---->2、  <!---->其他语句会刷新缓存
<!---->3、  <!---->缓存使用LRU(Least Recently Used)算法来回收
<!---->4、  <!---->缓存会根据指定的时间间隔来刷新
<!---->5、  <!---->缓存会存储1024个对象


 
缓存分为一级缓存和二级缓存:
一级缓存为sqlsession级别的:执行了查询语句就会缓存,查询条件相同才会使用缓存
二级缓存为SqlSessionFactory级别的:session.commit()之后才会缓存,查询条件相同才会使用缓存
页: [1]
查看完整版本: MyBatis(-)