深入研究Hibernate延迟加载技术

 今天我们主要来深索Hibernate延迟加载技术,Hibernate延迟加载技术包括实体对象的延迟加载、集合类型的延迟加载等。
  
  Hibernate延迟加载的对象:
  
  ◆hibernate 2针对实体对象和集合
  
  ◆hibernate 3同时提供了属性的延迟加载功能。
  
  其中对集合的延迟加载特性意义最为重大。
  
  实体对象的Hibernate延迟加载:
  
  在hibernate配置文件中的class指定
  
  集合类型的Hibernate延迟加载:
  
  在set中指定lazy=true
  
  这样只有实际加载与对象相关联的集合对象的时候,再通过session从数据库中加载实际的数据集。
  
  Hibernate.initialize方法可以强制Hibernate立即加载关联的对象集,例如:
  
  Hibernate.initialize(user.getAddress());
  
  集合类型的缓存:
  
  如果为某个集合类设定了缓存,如
  
  <set
  
  name
  
  =“address”
  
  table
  
  =“t_address”
  
  lazy
  
  =“true”
  
  ……
  
  >
  
  <cache
  
  usage
  
  =“read-only”/>
  
  <key


  
  column
  
  =“user_id”
  
  />
  
  <one-to-many
  
  class
  
  =“cn.blogjava.TAddress”
  
  />
  
  </set>
  
  Hibernate对集合类型进行缓存的时候,分两部分保存。首先是这个集合中所有实体的id列表,其次才是各个实体对象。

你可能感兴趣的:(Hibernate,配置文件,的)