Hibernate3提供的属性的延迟加载功能

Hibernate3增强了对实体属性的延迟加载功能,要实现这个功能,分两个步骤

1.在hbm配置文件上对某个property设置lazy=true
   <property name="resume" type="java.lang.String" column="resume" lazy="true"/>

2.需要对拥有resume的实体类二进制class文件进行强化处理(会嵌入很多CGLIB代码) 

    Ant脚本如下:

   

< project  name ="hibernateSample"  default ="instrument"  basedir ="." >
   
< property  name ="lib.dir"  value ="./lib" />
   
< property  name ="classes.dir"  value ="./bin" />
   
< path  id ="lib.classes.path" >
      
< fileset  dir ="${lib.dir}" >
         
< include  name ="**/*.jar" />
      
</ fileset >
   
</ path >
   
< target  name ="instrument" >
      
< taskdef  name ="instrument"  classname ="org.hibernate.tool.instrument.InstrumentTask" >
         
< classpath  path ="${classes.dir" } />
         
< classpath  path ="lib.class.path" />
      
</ taskdef >
      
< instrument  verbose ="true" >
          
< fileset  dir ="${classes.dir}/com/redsage/hibernate/db/enity" >
             
< include  name ="TUser.class" />
          
</ fileset >
      
</ instrument >
   
</ target >
</ project >

此脚本位于eclipse项目的根目录下,  ./bin为eclipse的默认编译输出路径, ./lib下存放了所需的jar(hibernat3.jar及Hibernate所需的类库)

你可能感兴趣的:(hibernate3)