SSH项目报:org.hibernate.LazyInitializationException:异常

最近在做ERP系统的时候,发现在配置MANYTOONE、MANYTOMANY、oneTomany的时候,特别容易报org.hibernate.LazyInitializationException异常,苦苦试了好多方法,都差强人意,于是自己亲测以下方法:(仅供参考,看不明白的可以私聊)

因为设计的表格里面太多级联操作,所以就会存在一个加载的问题,解决的办法是在你的实体类的hbm.xml文件中,只要是相关的表格,里面的manytomany、或者manytoone、onetomany都加上【lazy="false"】(默认lazy="true",延迟加载,导致session用的时候关闭),还有SET里面也加上【lazy="false"】。

同时,加上这个之后你可能会遇到无限循环的问题,这个时候你只要在你的ACTION里面的转换为JSON之前加上

        //防止死循环
        JsonConfig jsonconfig = new JsonConfig();
        jsonconfig.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT);

       jsonobject = JSONObject.fromObject(map,jsonconfig);


这样整个问题就可以得到解决,


小白一个,说的不对的大家原谅。。。。。。

你可能感兴趣的:(JAVA)