`
mamaoyuan625
  • 浏览: 173361 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Hibernate中加载的三种类型

阅读更多

一:实体对象的加载

比如说:用户和订单的关系是一对多, 虽然它们有关联,但是默认是延迟加载 Lazy=“true”,最终得到的是代理对象,如果要访问代理对象的属性的话,则会抛出异常,

解决方法:left join fetch 迫切抓取连接

 

select u  from User u left join fetch Order o ;

 

 

二:普通属性

默认是:lazy=“false”

如果要改为延迟 方法较麻烦

 

三:集合对象

set list map  默认 Lazy =“true”

 

1:List

 

<list name="diarys" table="petDiary" cascade="all" inverse="true">
		<key column="petId"></key>
		<index column="listindex"></index>
		<one-to-many class="com.lovo.po.PetDiary"/>
</list>

 2:set

 <set name="orders"
            table="t_order"
            cascade="all"
            inverse="true"
            lazy="true"
           >
           <key column="fk_customer_id"></key>
           <one-to-many class="Order"/>
 </set>

 3:map

private Map school=new  HashMap();      
           
public Map getSchool() {      
    return school;      
}      
public void setSchool(Map school) {      
   this.school=school;      
}  

private Map school=new  HashMap();   
        
public Map getSchool() {   
    return school;   
}   
public void setSchool(Map school) {   
   this.school=school;   
} 



Xml代码 
<map name="school" table="schools">  
      <key column="pid" not-null="true" />        
      <map-key type="string" column="indet"/>      
      <element type="float" column="score"/>      
 </map> 

key 子元素用于映射外键列,而 map-key 子元素则用于映射 Map 集合的 Key 。

分享到:
评论

相关推荐

    Hibernate中文API大全

    组件的属性可以是任意一种Hibernate类型(包括集合, 多对多关联, 以及其它组件等等)。嵌套组件不应该被当作一种特殊的应用(Nested components should not be considered an exotic usage)。 Hibernate倾向于支持...

    Hibernate+中文文档

    9.1. 三种策略 9.1.1. 每个类分层结构一张表(Table per class hierarchy) 9.1.2. 每个子类一张表(Table per subclass) 9.1.3. 每个子类一张表(Table per subclass),使用辨别标志(Discriminator) 9.1.4. 混合...

    hibernate3.2中文文档(chm格式)

    9.1. 三种策略 9.1.1. 每个类分层结构一张表(Table per class hierarchy) 9.1.2. 每个子类一张表(Table per subclass) 9.1.3. 每个子类一张表(Table per subclass),使用辨别标志(Discriminator) 9.1.4. 混合...

    Hibernate中文详细学习文档

    9.1. 三种策略 9.1.1. 每个类分层结构一张表(Table per class hierarchy) 9.1.2. 每个子类一张表(Table per subclass) 9.1.3. 每个子类一张表(Table per subclass),使用辨别标志(Discriminator) 9.1.4. 混合...

    Hibernate 中文 html 帮助文档

    9.1. 三种策略 9.1.1. 每个类分层结构一张表(Table per class hierarchy) 9.1.2. 每个子类一张表(Table per subclass) 9.1.3. 每个子类一张表(Table per subclass),使用辨别标志(Discriminator) 9.1.4. 混合使用...

    Hibernate实战(第2版 中文高清版)

     10.1.2 Hibernate应用程序中的事务   10.1.3 使用Java Persistence的事务   10.2 控制并发访问   10.2.1 理解数据库级并发   10.2.2 乐观并发控制   10.2.3 获得额外的隔离性保证   10.3 非事务数据...

    HibernateAPI中文版.chm

    9.1. 三种策略 9.1.1. 每个类分层结构一张表(Table per class hierarchy) 9.1.2. 每个子类一张表(Table per subclass) 9.1.3. 每个子类一张表(Table per subclass),使用辨别标志(Discriminator) 9.1.4. 混合...

    hibernate+中文api

    1.2.6. 加载并存储对象 1.3. 第二部分 - 关联映射 1.3.1. 映射Person类 1.3.2. 单向Set-based的关联 1.3.3. 使关联工作 1.3.4. 值类型的集合 1.3.5. 双向关联 1.3.6. 使双向连起来 1.4. 第三部分 - Event...

    hibernate 教程

    三种策略 8.2. 限制 9. 操作持久化数据(Manipulating Persistent Data) 9.1. 创建一个持久化对象 9.2. 装载对象 9.3. Querying 9.3.1. 标量查询(Scalar query) 9.3.2. 查询接口(Query ...

    Hibernate注解

    * 3.hilo 要在数据库中建立一张额外的表,默认表名为hibernate_unque_key,默认字段为integer类型,名称是next_hi(比较少用) * 例:@GeneratedValue(generator = "paymentableGenerator") * @GenericGenerator...

    属性延迟加载

    Hibernate3开始增加了通过property节点的lazy属性,为特定的属性指定延迟加载...与实体和集合类型的延迟加载不同,Hibernate3属性延迟加载机制在配置外,还需要用类增强器对二进制Class文件进行强化处理(借助ANT)

    jackson-datatype-hibernate, 用于处理Hibernate的Jackson JSON处理器模块( http,Add.zip

    datatype-hibernate, 用于处理Hibernate的Jackson JSON处理器模块( http,Add 构建 Jackson 模块( jar ) 以支持JSON序列化和反序列化 Hibernate ( http://hibernate.org ) 特定数据类型和属性,特别是延迟加载方面。...

    hibernate3.04中文文档.chm

    10.1. 三种策略 10.1.1. 每个类分层结构一张表(Table per class hierarchy) 10.1.2. 每个子类一张表(Table per subclass) 10.1.3. 每个子类一张表(Table per subclass),使用辨别标志(Discriminator) 10.1.4. ...

    Hibernate教程

    10.1. 三种策略 10.1.1. 每个类分层结构一张表(Table per class hierarchy) 10.1.2. 每个子类一张表(Table per subclass) 10.1.3. 每个子类一张表(Table per subclass),使用辨别标志(Discriminator) 10.1.4. ...

    hibernate 体系结构与配置 参考文档(html)

    三种策略 9.1.1. 每个类分层结构一张表(Table per class hierarchy) 9.1.2. 每个子类一张表(Table per subclass) 9.1.3. 每个子类一张表(Table per subclass),使用辨别标志(Discriminator) 9.1.4. 混合使用...

    ssh(structs,spring,hibernate)框架中的上传下载

     以上是Spring+Hibernate将文件二进制数据持久化到数据库的解决方案,而Struts通过将表单中file类型的组件映射为ActionForm中类型为org.apache.struts.upload. FormFile的属性来获取表单提交的文件数据。  工程...

    Hibernate_3.2.0_符合Java习惯的关系数据库持久化

    9.1. 三种策略 9.1.1. 每个类分层结构一张表(Table per class hierarchy) 9.1.2. 每个子类一张表(Table per subclass) 9.1.3. 每个子类一张表(Table per subclass),使用辨别标志(Discriminator) 9.1.4. 混合...

    hibernate

    三种策略 8.2. 限制 9. 操作持久化数据(Manipulating Persistent Data) 9.1. 创建一个持久化对象 9.2. 装载对象 9.3. Querying 9.3.1. 标量查询(Scalar query) 9.3.2. 查询接口(Query ...

    hibernate 3.2 官方中文参考手册(HTML)

    1. Hibernate入门 1.1. 前言 1.2. 第一部分 - 第一个...1.2.6. 加载并存储对象 1.3. 第二部分 - 关联映射 1.3.1. 映射Person类 1.3.2. 单向Set-based的关联 1.3.3. 使关联工作 1.3.4. 值类型的集合 · · ·

Global site tag (gtag.js) - Google Analytics