阐述hibernate延迟加载背后的原理
本文将阐述hibernate延迟加载背后的原理---动态代理,,需要的朋友可以参考下其中的内容详情。
示例数据表:team(班级)、certificate(身份证)、student(学生)
Team.hbm.xml
br />
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
Certificate.hbm.xml
br />
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
constrained="true" >
Student.hbm.xml
br />
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
unique="true"
column="cardId"
cascade="all"
>
注意:对one-to-one 关系进行延迟加载和其他关系相比稍微有些不同。many-to-one 的延迟加载是在配置文件的class 标签
上设置 lazy="true" ,one-to-many 和 many-to-many 的延迟加载是在 set 标签中设置lazy="true"。而one-to-one 不只要在 classs
标签设置 lazy="true",而且要在one-to-one 标签中设置constrained="true" 。
如果不设置constrained="true",则一对一查询使用默认的预先抓取策略(fetch="join")。
以上就是阐述hibernate延迟加载背后的原理,想必都了解了吧,更多相关内容请继续关注爱站技术频道。
上一篇:java el简介和其的用法