`

Hibernate3 实体属性的延迟加载——Hibernate深入浅出

阅读更多
如果实体对象中存在大文本或者图像等属性字段,有必要将该种字段设置为延迟加载,即在需使用该字段的时候再加载该字段的内容。
属性延迟加载的实现:
1、在实体映射文件中,通过property节点的lazy属性,可以为特定的属性制定延迟加载策略。
<!----><hibernate-mapping>
  
<class 
     
name="test.Tuser"
     table
="T_USER"
     batch-size
="5">
     
<id name="id" columen="id">
        
<generator class="native"/>
     
</id>
     
<property 
         
name="name"
         column
="name"/>
     
<property 
         
name="age"
         column
="age"/>
     
<property
         
name="resume"
         column
="resume"
         lazy
="true"/>                //这里将个人简历(大文本字段)设置为延迟加载。
   
</class>
</hibernate-mapping>

2、配置了lazy属性之外,还要借助类增强器对二进制Class文件进行强化处理(buildtime bytecode instrumentation)。通过ANT调用Hibernate类增强器对TUser.class文件进行强化处理。脚本如下:
<!----><project name="HibernateSample" default="instrument" basedir=".">
  
<property name="lib.dir" value="./lib"/>
  
<property name="classes.dir" value="./bin"/>
  
  
<path id="lib.class.path">
     
<fileset dir="${lib.dir}">
         
<include name="**/*.jar"/>
     
</fileset>
   
  
<target name="instrument">
     
<taskdef name="instrument"
         classname
="org.hibernate.tool.instrument.InstrumentTask">

        
<classpath path="${classes.dir}"/>
        
<classpath refid="lib.class.path"/>
     </
taskdef>
        
    
<instrument verbose="true">
       
<fileset dir="${classes.dir}/com.redsaga/hibernate/db/entity">
          
<include name="TUser.class"/>
       
</fileset>
    
</instrument>
 
</target>
</project>
  
注:脚本中涉及的配置路径,根据项目目录修改。
分享到:
评论

相关推荐

    深入浅出Hibernate

    《深入浅出Hibernate》是一本全面且深度剖析Hibernate框架的优秀教材。Hibernate是Java领域广泛使用的对象关系映射(ORM)框架,它极大地简化了数据库与Java对象之间的交互,使得开发者能够更加专注于业务逻辑,而...

    深入浅出Hibernate.pdf

    《深入浅出Hibernate》这本书是Java开发者们了解和掌握Hibernate框架的重要参考资料。Hibernate是一个开源的对象关系映射(ORM)框架,它简化了Java应用程序与数据库之间的交互,将复杂的SQL操作转化为对Java对象的...

    深入浅出Hibernate源代码.rar

    【标题】"深入浅出Hibernate源代码.rar"揭示了Hibernate这一流行Java持久化框架的核心机制。Hibernate是一个开源的对象关系映射(ORM)框架,它允许开发者以面向对象的方式处理数据库,而无需直接编写SQL语句。这个...

    Hibernate实战

    《Hibernate实战》这本书深入浅出地探讨了Java领域中广泛使用的对象关系映射框架——Hibernate。Hibernate是一个开源的ORM框架,它为Java开发者提供了一种高效、便捷的方式来管理数据库操作,消除了Java对象与SQL...

    hibernate框架开发2016版视频资料

    《Hibernate框架开发2016版视频资料》是由知名教育机构黑马程序员与传智播客联合推出的培训课程,旨在帮助学员...同时,结合黑马程序员和传智播客的教学风格,课程内容应该深入浅出,易于理解,适合不同层次的学员。

    Hibernate夏昕

    《深入浅出Hibernate》这本书是IT领域中关于Hibernate框架的一部经典著作,由技术专家夏昕编著。Hibernate是一款开源的对象关系映射(ORM)框架,它为Java开发者提供了在数据库上操作对象的强大工具,极大地简化了...

    hibernate入门

    本文将深入浅出地介绍Hibernate的基础概念、核心功能及其实现方式,帮助初学者快速入门。 一、Hibernate简介 Hibernate是Java平台上的一个开源持久化框架,它通过提供对象-关系映射(Object-Relational Mapping,...

    Hibernate电子书.rar

    本书深入浅出地介绍了Hibernate的基础知识,包括安装配置、对象关系映射(ORM)的基本原理、Entity类的创建、持久化字段的注解、主键生成策略、以及SessionFactory和Session的使用等。通过学习,读者可以理解如何将...

    Hibernate开发资料

    《Hibernate开发资料》是一份...《Hibernate技术文档.CHM》这份资料,通过深入浅出的讲解,配合Java代码示例,旨在帮助读者从理论到实践全面掌握Hibernate,提升开发效率,降低维护成本,是Java开发者的必备参考资料。

    田雪松hibernate讲义

    田雪松,作为传智播客的早期讲师,以其深入浅出的教学风格受到众多学员的欢迎,后来他创立了自己的教育机构——松迪,继续在IT教育培训领域发光发热。他的教学资源一直备受业界认可,这份讲义便是其专业性和教学能力...

    2023年Java相关课程系列笔记之十四Hibernate学习笔记.doc

    在本篇“2023年Java相关课程系列笔记之...总结,这门课程深入浅出地讲解了Hibernate的核心概念、使用方法以及其在Java开发中的优势。通过学习,开发者能够熟练掌握如何利用Hibernate进行高效的数据操作,提升开发效率。

    Packtpub.NHibernate.2.Beginners.Guide.May.2010.rar

    这本书深入浅出地介绍了NHibernate这个强大的对象关系映射(ORM)框架,帮助开发者在.NET环境中更高效地管理数据库操作。ORM框架是现代软件开发中的一个重要工具,它简化了数据库编程,使得开发人员可以使用面向对象...

Global site tag (gtag.js) - Google Analytics