下面的配置在spring中使用hibernate时,会发生LazyInitializationException.lazy="true" 就会发生要避免发生LazyInitializationException,修改lazy="false"
<set
name="locCodeId"
table="DSW_LOC"
lazy="false"
cascade="save-update"
sort="unsorted"
> <key
column="DSW_ID"
>
</key> <many-to-many
class="com.andrew.Region"
column="id"
/> </set>
<set
name="locCodeId"
table="DSW_LOC"
lazy="false"
cascade="save-update"
sort="unsorted"
> <key
column="DSW_ID"
>
</key> <many-to-many
class="com.andrew.Region"
column="id"
/> </set>
解决方案 »
- 关于ireport的datasource的以及和Struts2整合的疑问。
- 请问一个关于解析xml的问题
- 急需推荐关于JAVAEE 中Struts2 Hibernate Spring的书
- 求教高手:Hibernate级联删除 mysql数据库
- linux下执行load data infile
- java中编写xml 的一个小小问题!
- 机器在配置完j2ee1.3和tomcat之后,打开网页的时候不定期的在又下角弹出广告(brought to you HenBang),请问这是什么原因?
- 请问怎样把WebLogic 8.1加进jbuilderX里啊?
- 高手请指教:关于jsp+servlet+ejb
- jsp中 ArrayList的值如何绑定到select option里
- 一个关于jsp的中文乱码问题
- 这个错误是什么意思啊??java.lang.ClassCastException: org.apache.struts.action.RequestProcessor
懒加载初始化错误
hibernate 配置文件lazy="false"
是hibernate 映射文件 lazy="true" 配置错误了,改为:lazy="false"1楼是正解。!
lazy="true" 延迟加载,所谓的延迟加载,就是对一端的集合属性的加载策略,就是在不使用到集合中的对象的数据就不会真正的加载集合中的对象数据,而是加在一个代理对象就相当于的一个空的容器。这也就是会出现LazyInitializationException异常,也就是没有初始化这个代理的集合对象,在事先查询到了集合中的对象就会初始化这个对象,如果Session没有关闭就会在查询加载集合中的对象信息,如果提前关闭了Session,当使用集合中的对象信息时就会有这个异常。