Mybatis 学习笔记
ResultType与ResultMap
- ResultType返回一个List
ResultMap返回一个加强的Pojo(Plan old java object)
可以满足一些特殊要求,嵌套的Pojo
association(一对一), collection(一对多) ,多对多(利用嵌套association,collection)
缓存
一级缓存
范围是SqlSession级别的,默认开启的。当事务提交时,清空一级缓存
二级缓存
范围是NameSpace的(注:多个mapper可以定义为同一个NameSpace),一个NameSpace对应一块二级缓存区域,当SqlSession关闭时写入二级缓存。当事务提交之后清空当前NameSpace的二级缓存。二级缓存默认是关闭的。useCache禁用二级缓存。flushCache(刷新缓存,清空缓存)。
Mybatis Cache 参数
flushInterval(刷新间隔)
size
readOnly应用场景: 实时性要求不高
分布式缓存
Ehcache
Redis
Memcached