延迟的加载

Posted 零星一点

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了延迟的加载相关的知识,希望对你有一定的参考价值。

*****
get和load一个实体时,get会立即返回实体,而load返回的是一个代理,

只有你访问了该实体的属性,才会真正从数据库里读取,这个你可以看他有没有发出SQL语句就可以证明。
另一个就是映射关系时,比如一对多,一这里定义了一个多的一方的集合,延迟的加载的话就不会加载关联的实体
*******

延迟加载分类:

 01.类级别的查询策略

 

 

 

类级别可选的加载策略包括立即加载和延迟加载。默认为延迟加载也就是true。表示采用延迟加载;如果lazy属性为false,表示采用立即加载

load()方法在Id属性和getClass(),不去请求数据库,其他属性需请求数据库

 02.一对多和多对多关联的查询策略

 

lazy属性的另一个属性extra 加强延迟加载在<set>元素配置lazy属性为"extra"。延迟加载在<set>元素配置lazy="true"。在<set>元素配置lazy="false"

 

 

 03.多对一关联的查询策略

 
<many-to-one>元素用来设置多对一关联关系。lazy属性 默认值为proxyproxy:延迟加载no-proxy:无代理延迟加载false:立即加载

 

以上是关于延迟的加载的主要内容,如果未能解决你的问题,请参考以下文章

延迟弹出对话框片段,直到其中的 webview 完成加载

如何延迟或异步此 WordPress javascript 片段以最后加载以加快页面加载时间?

由于休息api延迟,视图寻呼机中的第一个片段未显示

在 BottomNavigationView 中切换选项卡时出现延迟

Android中切换标签片段之间的延迟

如何在 UITableView 中实现类似 UIImageView 的延迟加载