阐述hibernate延迟加载背后的原理

来源:爱站网时间:2018-08-29编辑:网友分享
本文将阐述hibernate延迟加载背后的原理---动态代理,,需要的朋友可以参考下其中的内容详情。

本文将阐述hibernate延迟加载背后的原理---动态代理,,需要的朋友可以参考下其中的内容详情。

示例数据表:team(班级)、certificate(身份证)、student(学生)

Team.hbm.xml

br /> "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">


    lazy ="true" >
        java.lang.String">
           
           
       

       
           
       

        lazy="true" >
           
               
           

           
       

   



Certificate.hbm.xml

br /> "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">


    lazy="true" >

       
           
           

           

       

       
           
       

                class="edu.dgut.ke.model.Student"
         constrained="true" >

       
   



Student.hbm.xml

br /> "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">


    lazy="true" >
       
           
           
       

                class="edu.dgut.ke.model.Certificate"
        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简介和其的用法

下一篇:细谈Hibernate一对多自身关联问题

您可能感兴趣的文章

相关阅读

热门软件源码

最新软件源码下载