`
地方疙瘩人
  • 浏览: 37667 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

关于Hibernate抛出LazyInitializationException

阅读更多
LazyInitializationException: could not initialize proxy - the owning Session was closed
在网上搜了一下,处理方法是lazy=false;
这个处理方法不能让人满意,不知道各位有没有更加理想的处理方法
分享到:
评论
3 楼 地方疙瘩人 2008-01-08  
感谢两位大侠了,
除了org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
另外问一下常常看到的这两个过滤器是干什么用的
com.opensymphony.module.sitemesh.filter.PageFilter
org.apache.struts2.dispatcher.ActionContextCleanUp
谢谢
2 楼 anxin587 2008-01-04  
Hibernate.initialize(),
1 楼 DigitalSonic 2008-01-04  
用Spring的OpenSessionInViewFilter或者拦截器,可以多搜搜,这似乎是个老问题了

相关推荐

    集成spring的hibernate懒加载

    当你尝试在Controller层或者视图层访问懒加载的属性时,如果Session已经关闭("no Session..."错误),就会抛出`org.hibernate.LazyInitializationException`。这是因为懒加载的代理对象需要Session来执行数据库查询...

    Hibernate延迟加载以及利用Spring

    - **异常处理**:如果在使用延迟加载的过程中关闭了Session,那么在尝试访问延迟加载的对象时会抛出`LazyInitializationException`异常。 ```java Exception in thread "main" org.hibernate....

    java框架之hibernate

    - 如果数据库中不存在该对象,则会抛出`org.hibernate.LazyInitializationException`或`org.hibernate.ObjectNotFoundException`异常。 - 使用`load()`可以提高性能,因为它减少了不必要的数据库访问。 2. **Get...

    hibernate延迟机制分析

    然而,当在Session关闭后尝试访问这些延迟加载的属性,就会抛出`org.hibernate.LazyInitializationException`异常,提示“无法懒惰初始化集合角色...,无会话或会话已关闭”。这是因为延迟加载需要有效的Hibernate ...

    Hibernate配置常见错误

    错误表现:在Session关闭后尝试访问懒加载属性,抛出“org.hibernate.LazyInitializationException: could not initialize proxy - no Session”异常。 解决方案:理解并合理使用Open Session in View(OSIV)模式...

    hibernate抓取策略和懒加载案例

    然而,需要注意的是,如果在事物之外访问懒加载属性,可能会抛出`LazyInitializationException`,因为此时没有活动的Session可以执行SQL查询。为了避免这种情况,我们可以使用Open Session in View(OSIV)模式或者...

    Hibernate延时加载与lazy机制.doc

    - 若Session关闭后访问延迟加载对象,会抛出`LazyInitializationException`。 **7. 影响行为** - 如果在Session生命周期内未访问延迟加载对象,直到Session关闭都不会执行SQL,节省了数据库资源。 综上,理解并...

    Hibernate集合属性的延迟加载.doc

    需要注意的是,如果在事务之外尝试访问延迟加载的集合,将会抛出 `LazyInitializationException`,因为此时 Hibernate Session 已经关闭,无法执行数据库查询。为了避免这种情况,可以考虑使用 Eager Loading(即...

    hibernate错误示例一

    4. **懒加载问题**:如果不正确地使用了`fetch=FetchType.LAZY`,在尝试访问未初始化的关联对象时,可能会抛出`LazyInitializationException`。 5. **循环引用**:双向OneToOne关联可能导致循环引用,特别是在序列...

    hibernate中get和load的区别共5页.pdf

    然而,如果在对象未初始化时就尝试访问它的属性,将会抛出`LazyInitializationException`。 `load`方法的一个特别之处在于,如果对象已经存在于缓存中,它也会返回一个代理对象,而不是直接返回缓存中的实体对象。...

    Hibernate lazy延迟加载

    2. **初始化时机**:懒加载只能在session打开状态下工作,一旦session关闭,尝试访问懒加载属性将会抛出`LazyInitializationException`异常。因此,需要确保在业务逻辑中合理安排初始化关联数据的时间点。 3. **透明...

    hibernate源码

    这通过代理模式实现,`LazyInitializationException`异常是当尝试在会话关闭后访问懒加载属性时抛出的。 通过深入阅读和理解Hibernate的源码,你不仅可以掌握其工作原理,还能提升自己的编程技能,理解数据库操作的...

    hibernate 延迟加载.docx

    然而,如果在`Session`关闭后尝试访问关联对象,会抛出`LazyInitializationException`异常,因为延迟加载策略只在`Session`打开的状态下有效。 **延迟加载的生效期** 延迟加载的生效时间与`Session`的生命周期相同...

    Hibernate开发手册

    - **注意事项**:`load()` 和 `get()` 的区别在于 `load()` 会在找不到对象时抛出异常,而 `get()` 返回 null。 #### 四、配置与初始化 - **Configuration 配置类**:用于读取配置文件并建立 Hibernate 的环境设置...

    Hibernate映射导致的几个异常

    9. **`LazyInitializationException`的另一种情况:** 在JPA中,如果你的实体类有一个懒加载的集合属性,而该属性在JSON序列化时被访问,也会抛出此异常。解决方案包括在序列化前手动加载懒加载属性,或者使用能处理...

    Java常见异常集-Java,Hibernate,Tomcat异常

    13. **Hibernate的LazyInitializationException**:当试图初始化一个代理对象,但其所属的Session已关闭时,会抛出此异常。解决方法是确保在Session关闭前完成懒加载操作,或考虑使用Eager Loading或Open Session In...

    Hibernate延迟加载

    当Session关闭后访问延迟加载的对象时,会抛出`LazyInitializationException`异常,可以通过提前调用`Hibernate.initialize()`或在Session关闭前查询所需属性来解决。 2. **集合**:在一对多或集合关联中,可以...

    错误及解决方案.pdf

    但是,如果在访问延迟加载的数据时,对应的Hibernate会话已经关闭,则会抛出LazyInitializationException异常。这种异常通常意味着代码试图在一个事务或会话的边界之外去访问数据,这是非法的。 知识点二:使用...

    Open Session in View模式.PPT

    - 如果在一个Session结束后尝试访问延迟加载的属性,将会抛出`LazyInitializationException`,因为Session已经关闭,无法再发起数据库查询。 2. **体验延迟加载** - 为了确保延迟加载能在整个请求生命周期内工作...

Global site tag (gtag.js) - Google Analytics