MyBatis
小渣渣_
这个作者很懒,什么都没留下…
展开
-
MyBatis构建SqlSessionFactory过程
MyBatis运行过程大致分为两步:1. 利用XMLConfigBuilder类读取配置文件缓存到Configuration对象(单例),用来创建SqlSessionFactory对象2. SqlSession的执行过程构建SqlSessionFactory过程:1. 通过org.apache.ibatis.builder.xml.XMLConfigBuilder解析MyBa...原创 2019-11-28 23:25:37 · 721 阅读 · 0 评论 -
lazyLoadingEnabled和aggressiveLazyLoading作用
N+1问题:假设现在有N个关联关系完成了级联,那么只要再引入一个关联关系,就变成了N+1级联,所有级联的SQL都会被执行,显然会有很多我们不需要的数据被加载进来,这就造成了极大的资源浪费。引入延迟加载的目的:为了处理N+1问题(级联加载的性能问题)MyBatis的配置文件中两个全局配置可以配置延迟加载 ,如下: <settings> <!-- 全局...原创 2019-11-20 23:56:56 · 3349 阅读 · 5 评论 -
MyBatis动态SQL
MyBatis动态SQL基本元素元素作用备注if判断语句单条件分支判断choose(when, otherwise)相当于java中的switch case语句多条件分支判断trim(where, set)辅助元素,用于处理特定的SQL拼装问题,比如去掉多余的and, or, 逗号等用于处理特定的SQL拼装问题foreach循环语句常用...原创 2019-11-20 22:43:37 · 117 阅读 · 0 评论