`
justlive
  • 浏览: 1941 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

one-to-one延迟加载问题

阅读更多

宿主表配置:
<class name="BaseInfo"  table="BaseInfo"  lazy="true">
        <id name="Id" type="java.lang.Long">
            <column name="ID" precision="30" scale="0" />
            <generator class="native"></generator>
        </id>
.....
<one-to-one name="Address" class="cn.com.ctsi.xapc.model.DeputyAddress" constrained="true" fetch="select" lazy="proxy"/>


从表配置:
<class name="Extension" table="Extension"  lazy="true">
<id name="Id" type="java.lang.Long">
<column name="ID" precision="30" scale="0" />
<generator class="foreign">
<param name="property">BaseInfo</param>
</generator>
</id>
<one-to-one name="BaseInfo"
class="BaseInfo" constrained="true" />
...



在检索中, 使用session.createQuery("from BaseInfo") 的方式检索,没有出现N+1查询。 但是当取得一个宿主对象后,通过它获得其从属属性时,宣告失败,  即,无法这样获得:baseInfo.getExtension() 一个从表属性。

请问如何获得才能通过baseInfo实例获得 Extension实例?
分享到:
评论
2 楼 justlive 2008-03-27  
配置了属性。
谢谢楼上, 不过问题已经解决。

关键问题是web.xml需要设置这样过滤:

<filter> 
    <filter-name>OpenSessionInViewFilter</filter-name> 
     <filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class> 
   </filter> 
   <filter-mapping> 
    <filter-name>OpenSessionInViewFilter</filter-name> 
     <url-pattern>/*</url-pattern> 
   </filter-mapping>
1 楼 movingboy 2008-03-26  
你没有为类BaseInfo配置Extension属性,它怎么可能会加载该属性呢?

相关推荐

    Hibernate应用例子one-to-one

    【Hibernate应用例子one-to-one】 Hibernate 是一个强大的Java对象关系映射(ORM)框架,它允许开发者以面向对象的方式操作数据库,从而简化了数据库应用程序的开发。在Hibernate中,"one-to-one"(一对一)关联是...

    Hibernate one to many(many to one) 配置

    标题"Hibernate one to many(many to one) 配置"涉及到的是关系型数据库在Java中的持久化框架Hibernate中的两种关联映射关系:一对一(One-to-One)和多对一(Many-to-One)。在数据库设计中,这种关系很常见,例如...

    hibernate延迟加载解决

    &lt;one-to-many name="children" class="ChildEntity" fetch="LAZY"/&gt; ``` 或者在Java注解中: ```java @OneToMany(fetch = FetchType.LAZY) private List&lt;ChildEntity&gt; children; ``` **4. 延迟加载的问题** 尽管...

    Hibernate延迟加载

    4. 单端关联(One-to-one, many-to-one)的延迟加载:`&lt;one-to-one&gt;`和`&lt;many-to-one&gt;`元素的`lazy="proxy"`、`lazy="false"`或`lazy="noproxy"`可以控制关联对象的延迟加载行为。`lazy="proxy"`会在访问关联对象时...

    Hibernate one to one详细配置

    在Java的持久化框架Hibernate中,一对一(One-to-One)关联映射是常见的关系映射类型之一。它用于表示两个实体之间一对一的关联关系,即一个实体对应另一个实体的唯一实例。下面将详细介绍Hibernate中如何进行一对一...

    Hibernate延迟加载以及利用Spring

    比如在给定的部分内容中,`&lt;many-to-one name="dept" class="com.sxy.dao.Dept" fetch="select" lazy="proxy"&gt;` 表示了部门(Dept)与员工(Emp)之间存在多对一关系,并且配置了延迟加载。 - `lazy="proxy"`:表示...

    NHibernate三种关系配置示例

    在这个示例中,我们将深入探讨 NHibernate 支持的三种主要关系映射:一对一(One-to-One)、一对多(One-to-Many)和多对多(Many-to-Many),并了解如何通过配置实现它们。 1. 一对一关系(One-to-One) 在一对一...

    OneUI3.1前端框架

    6. **优化的性能**:为了提升用户体验,OneUI3.1对资源进行了优化,如延迟加载、代码分割、最小化HTTP请求等,确保应用的快速加载和流畅运行。 7. **无障碍性支持**:考虑到不同用户的需求,OneUI3.1遵循WCAG(Web ...

    Hibernate 延迟加载

    - **一对一映射(One-to-One)**:在一对一映射中,可以使用`constrained`属性配合`lazy`属性来实现懒加载。具体而言,当`constrained`属性设置为`true`时,并且`lazy`属性启用,表示该关联将采用懒加载策略。 - **...

    day36 07-Hibernate抓取策略:many-to-one上的抓取策略

    今天我们要讨论的是Hibernate框架中的一个关键概念——抓取策略,特别是针对"many-to-one"关系的抓取策略。这篇博客将深入剖析这个主题,帮助你更好地理解和应用Hibernate。 Hibernate是Java领域中最流行的对象关系...

    Hibernate学习要点_one2one 一对一主键双线关联

    在深入探讨Hibernate中的一对一(One-to-One)主键双线关联机制之前,我们首先需要理解几个核心概念:Hibernate框架、实体关系映射以及主键关联的基本原理。Hibernate是Java平台下的一款开源对象关系映射(ORM)框架...

    Hibernate的延迟加载

    &lt;one-to-many class="net.ftng.entity.Address"/&gt; &lt;/hibernate-mapping&gt; ``` 考虑以下代码: ```java User user = (User) session.load(User.class, "1"); Collection addset = user.getAddresses(); // (1) ...

    hibernate 关联映射(二) one to one(单向)

    本篇文章将深入探讨Hibernate中的关联映射,特别是One-to-One(一对一)关联,这是一种表示两个实体之间一对一关系的映射方式。我们将通过源码分析和实际例子来理解其工作原理。 ### 一、One-to-One关联概述 在...

    hibernate_6映射关系之one2many.zip_hibernate

    在Java的持久化框架Hibernate中,`One-to-Many`映射关系是对象关系映射(ORM)中常见的一种关联类型。它表示一个实体("One"端)与多个其他实体("Many"端)之间的关系。例如,一个学生可以有多个课程,一个老师可以...

    jsonplugin, 对 struts2.1.X版本jsonplugin-0.34.jar 的修改

    第一次上传,要5分,是物有所值,处理了jsonplugin 的no session的问题,并且添加了,新的注释,例如 ...2.对one-ton-many ,one-to-one ,值设为null(被设置为延迟加载的时候) 3.不需要配置底层实体,在当前action配置就可以

    hibernate_One2One

    2. **&lt;one-to-one&gt;元素**:在XML配置文件中,可以使用&lt;one-to-one&gt;元素定义一对一关联,指定关联的实体和外键字段。 **三、@OneToOne注解的使用** `@OneToOne`注解包含以下关键参数: - `targetEntity`:指定关联...

    java Hibernate延迟加载

    对于一对一(One-to-One)的关系,延迟加载的配置与其他关系如一对多(One-to-Many)、多对一(Many-to-One)有所不同。在给定的示例中,我们有三个实体:Team、Certificate和Student,它们之间的关系是: 1. Team...

Global site tag (gtag.js) - Google Analytics