Mybatis的懒加载
(尊重劳动成果,转载请注明出处:https://blog.youkuaiyun.com/qq_39778516/article/details/84191689 consistencely的博客)
1、什么是延迟加载?
在进行表关联查询的时候,是一次性的将所有数据都查出来了,导致有些数据暂时用不到,降低了查询效率。这就是立即加载。
延迟加载就是在需要这些关联的表数据的时候才去查询数据库,也叫懒加载(按需加载)
2、延迟加载的注意事项:
一般我们在执行一对一操作的时候使用立即加载
在执行一对多的操作的时候使用懒加载
3、如何使用懒加载?
在主配置文件中开启懒加载
4、一对一的懒加载
在IAccount.xml中配置子查询
Association里面的属性:
Property:Account实体类中对应是user属性
Column:指的是子查询的时候传递过去的参数(必须)
javaType:指的是子查询返回的数据类型
select:指向的是子查询的方法:包含了IUserDao接口类全路径和方法名
5、一对多的懒加载
Collection属性分析:
Property:对应的是User实体类的accounts属性
ofType:子查询封装的是哪个实体类
select:指定的是子查询的方法:包含了IAccountDao的类全路径和方法名
column:指的是要传递给子查询的参数
6、多对多的懒加载
IRoleDao.xml的配置:
IRoleDao.xml的sql语句编写:
IUserDao.findUserByRid的sql语句编写:
Mybatis的懒加载
最新推荐文章于 2022-08-22 14:37:23 发布