您的位置:首页 > 其它

MyBatis:延迟加载介绍及配置

2018-03-28 08:33 281 查看
一、什么是延迟加载:代码中有查询语句,当执行到查询语句时,并不是马上去DB中查询,而是根据设置的延迟策略将查询向后推迟。二、MyBatis的延迟加载只能在对关联对象进行查询时使用延迟加载。三、主加载对象、关联对象、主表、关联表的概念:比如我们country表里有多个国家,minister表里有某个国家所对应的官员,我们查country时,并一带将其中的minister查出来,这里的Country就是主加载对象,对应的表就是主表,Minister就是关联对象,对应的表就是关联表。四、延迟加载策略(指到DB中真正执行select语句进行查询的时机设置):(一),直接加载:遇到代码中查询语句,马上到DB中执行select语句进行查询;【这种只能用于多表单独查询】(二),侵入式延迟加载:将关联对象的详情(具体数据,如id、name)侵入到主加载对象,作为主加载对象的详情的一部分出现。当要访问主加载对象的详情时才会查询主表,但由于关联对象详情作为主加载对象的详情一部分出现,所以这个查询不仅会查询主表,还会查询关联表。(三)、深度延迟加载:当需求访问主加载对象详情时,只会查询主表,而不会查询关联表,只有真正访问关联对象详情时,才会查询关联表。五、使用延迟加载的目的:减轻DB服务器的压力。六、配置(在主配置文件中配置):注意:要在properties标签之后,typeAliases标签之前定义。

主配置文件延迟加载配置
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mybatis