Hibernate和Spring结合使用时的不能lazy loading的问题

原创 2005年05月26日 09:21:00
在使用Spring ORM后,如果把Hibernate类映射文件中的lazy=true,在业务层读取集合时会报下面错误
错误信息:
LazyInitializationException: Failed to lazily
initialize a collection - no session or session was closed
如果让lazy=false,第一次查询就会读入所有关联的对象,开销太大。
解决的方法是在web.xml中配置OpenSessionInViewFilter,在每次开启页面时会自动打开session。
或者用OpenSessionInViewInterceptor.在非Web应用环境中开启Session
使用OpenSessionInViewFilter的配置如下:
<filter>
<filter-name>hibernateFilter</filter-name>
<filter-class>org.springframework.orm.hibernate.support.OpenSession
InViewFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>hibernateFilter</filter-name>
<url-pattern>*.html</url-pattern>
</filter-mapping>
在Spring Live和http://www.jroller.com/comments/kbaum/Weblog/orm_lazy_initialization_with_dao
解释了这个问题。

Spring使用OpenSessionInViewFilter解决Hibernate的lazy延时加载问题

Spring为我们解决最让人头痛的难题之一,Hibernate的Session的关闭与开启问题。 当hibernate+spring配合使用的时候,如果设置了lazy=true,那么在读取数据的时候...

spring整合hibernate时lazy加载失败问题

1. 环境: spring4 hibernate4 mysql 5.6 2. 原始问题现象:假设有两个表student和teacher,teachet是student的ManyToOne外键字段,设置...

Hibernate3延迟加载(lazy loading)详细分析与解释

Hibernate3延迟加载(lazy loading)详细分析与解释 一.延迟加载定义: 延迟加载(lazy load)是(也称为懒加载)Hibernate3关联关系对象默认的加载方式,延迟加载...

Mybatis延迟加载问题( Cannot enable lazy loading because CGLIB is not available)

错误原因: Cause: java.lang.IllegalStateException: Cannot enable lazy loading because CGLIB is not avail...

Dwr+Hibernate的Lazy问题

  • 2011年12月31日 10:54
  • 31KB
  • 下载

用 OpenSessionInViewInterceptor 的思路解决 Spring框架中的Hibernate Lazy

众所周知, 为了解决 Hibernate Lazy 问题, Spring 中引入了 OpenSessionInViewInterceptor, 这样虽然解决了页面上的 Lazy Load 问题,却增加...

解决 spring mvc 3.0 结合 hibernate3.2 使用<tx:annotation-driven>声明式事务无法提交的问题

1、问题复现      spring 3.0 + hibernate 3.2      spring mvc使用注解方式;service使用@service注解 事务使用@Transact...

解决 spring mvc 3.0 结合 hibernate3.2 使用<tx:annotation-driven>声明式事务无法提交的问题

1、问题复现      spring 3.0 + hibernate 3.2      spring mvc使用注解方式;service使用@service注解 事务使用@Transaction...

解决 spring mvc 3.0 结合 hibernate3.2 使用<tx:annotation-driven>声明式事务无法提交的问题

1、问题复现spring 3.0 + hibernate 3.2 spring mvc使用注解方式;service使用@service注解 事务使用@Transactional事务配置使用 ...
  • gmemai
  • gmemai
  • 2015年09月18日 22:35
  • 409

Hibernate OneToOne双向关联为什么没有外键的一方不能Lazy加载?

关联关系映射通常情况是比较难配置正确的。我觉得真正要掌握好Hibernate应该用OO思想来思考问题。就是要在配置过程,以实体对象为核心,关联到数据库,这个方向是不能反,非常重要的。      ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Hibernate和Spring结合使用时的不能lazy loading的问题
举报原因:
原因补充:

(最多只允许输入30个字)