mybatis从入门到精通(刘增辉)

配置Log4j查看mybatis操作数据库、
xml方式(动态sql)/注解方式(@*Provider可以实现动态拼接sql)的增删改查及其属性、
动态sql(if、choose when otherwise、where、set、trim、foreach、sql、bind+ognl)、
使用JavaBean/Map或@Param来接收参数、多数据库支持、OGNL用法、mybatisGenerator、pageHelper、高级查询、延迟加载、映射继承+列别名前缀实现无限层树结构封装、映射鉴别器(根据列的值使用不同的结果集)、调用存储过程、枚举类型处理器定义和调用、
缓存配置
(mybatis一级缓存:默认开启,不能控制,很少用到,存在于SqlSession的生命周期中,SqlSession存在于请求数据库处理事务的过程中,SqlSession控制事务,表现为使用setter后不update然后再次查询会得到setter后的值,增删改会清空)
(mybatis二级缓存:存在于SqlSessionFactory的生命周期中,一个数据源一个SqlSessionFactory,SqlSessionFactory存在于Mybtais应用的整个生命周期中,空间上是在命名空间隔离的。因为增删改会清空,所以二级缓存只用于单表,否则会出现脏数据即单表更新了后join表结果没更新。当调用close方法关闭SqlSession时SqlSession才会保存查询数据到二级缓存)
(ehcache实现mybatis二级缓存:缓存数据有内存和磁盘两级、缓存数据会在虚拟机重启的过程中写入磁盘)
(redis实现mybatis二级缓存:使mybatis-redis分布式缓存共享)
Mapper注入时推荐使用@Autowired根据类型注入

上一篇:认识 MyBatis ----- MyBatis 创建简单原理


下一篇:vue 代码高亮 highlight.js vue-highlightjs