hibernate get方法 懒加载异常

问题描述

hibernate用get方法怎么也懒加载异常呢?情况是这样device类中有个product类 他们的关系是多对一 ,many to one 这里没有显示的写上lazy属性(默认是proxy吧?),不过many-to-one这里确定要懒加载的而现在我想通过get方法得到device对象,在得到product,hibernate为什么会报懒加载异常呢?不是说get不会看懒加载么? 问题补充:可是多对一的一方,其他人想要延时加载啊,毕竟不是每查一个device类就一定要知道product类的信息啊

解决方案

我感觉这个就好像没有什么好的办法解决,你想在调用到一的一方的时候就出发Lazy,不调用的时候就不触发Lazy,我也想这样实现,我也没找到这样的方法实现,只能优化下其的查询性能来解决下查询效率
解决方案二:
Lazy的默认属性应该是true 你改成FALSE就好啦!

时间: 2024-10-22 12:04:12

hibernate get方法 懒加载异常的相关文章

spring mvc-Spring mvc结合Hibernate中实现ajxa出现懒加载异常

问题描述 Spring mvc结合Hibernate中实现ajxa出现懒加载异常 我要实现一个选择省份加载城市列表,然后选择城市加载区列表的操作,但是我在加载城市的时候一直报懒加载异常,session提前关闭,我觉得是因为我城市中设置的private Province province 对象的原因,请问大神这有什么好的解决办法吗 解决方案 懒加载的话,你直接用fetch属性设为eager就行了,session提前关闭,,可能是你的openSessionInView,,这个过滤器没用,,而且省市区

Struts2在打包json格式的懒加载异常问题

版权声明:尊重博主原创文章,转载请注明出处哦~http://blog.csdn.net/eson_15/article/details/51394302         hibernate中如果出现了级联查询,就可能出现懒加载问题,比如我现在有个Account(管理员)类.Category(商品类别)和Product(商品)类,从左到右都是一对多的关系,而且从右到左都是设置了@ManyToOne(fetch=FetchType.LAZY).我现在要把商品信息查出来打包成json格式传到前台,我在

spring-关于懒加载异常,请问怎么解决?多谢各位 了

问题描述 关于懒加载异常,请问怎么解决?多谢各位 了 我的数据库语句是from Survey s where s.user.id = ? 出现User 懒加载,我想问除了在User的配置文件中关闭懒加载这个解决方法外 1,还能用什么方法 希望能就此题具体说说 2,为什么这样用不行啊 from Survey s LEFT OUTER JOIN FETCH s.user.id = ? 3,from Survey s where s.user.id = 这句话怎么用嵌套查询 (就是分开s.user.i

Struts2在打包json格式的懒加载异常问题_java

Hibernate中如果出现了级联查询,就可能出现懒加载问题,比如我现在有个Account(管理员)类.Category(商品类别)和Product(商品)类,从左到右都是一对多的关系,而且从右到左都是设置了@ManyToOne(fetch=FetchType.LAZY).我现在要把商品信息查出来打包成json格式传到前台,我在后台使用查询语句为:from Product p left join fetch p.category where p.name like:name  这样就可以把Pro

hibernate 一对多映射 懒加载

   //从一的一端查询        //hibernate 默认使用懒加载       ClassRoom cr=(ClassRoom) session.get(ClassRoom.class, 1);//get方法不会懒加载,会直接查询ClassRoom数据库,       //但不会发出查询和他一对多的两个数据库的sql       cr.getStu();//默认设置,不会发出sql语句,在<class name="ClassRoom" table="t_cl

PHP实现懒加载的方法_php技巧

本文实例讲述了PHP实现懒加载的方法.分享给大家供大家参考.具体分析如下: 寻常php的加载是通过include(),require()等方法来加载外部文件,之后再通过实例调用方法或直接调用静态方法,而这样子写引入语句实在很麻烦,有的框架会将特定路径的文件全部引入,直接实例化就能使用,但这样一来有的类包不一定用到,写的类包越多的时候,加载的东西就不少了,影响程序的性能. 通过PHP的反射类 ReflectionClass 可以直接获得对应类的一个反射类: test.php文件如下: <?php

hibernate懒加载能用get方法吗

问题描述 hibernate懒加载能用get方法吗 hibernate中的session.load()方法特性是使用懒加载,那么请问hibernate中的session.get()方法在什么情况下也是使用的懒加载?还是说get方法没有懒加载,都是立即加载?看教程的时候发现测试集合的懒加载是用get方法取一对多的一对象而不是load方法 解决方案 http://blog.csdn.net/yaorongwang0521/article/details/7074573 解决方案二: get和load

Hibernate懒加载解析

Hibernate懒加载解析 在Hibernate框架中,当我们要访问的数据量过大时,明显用缓存不太合适, 因为内存容量有限 ,为了减少并发量,减少系统资源的消耗,这时Hibernate用懒加载机制来弥补这种缺陷,但是这只是弥补而不是用了懒加载总体性能就提高了. 我们所说的懒加载也被称为延迟加载,它在查询的时候不会立刻访问数据库,而是返回代理对象,当真正去使用对象的时候才会访问数据库.    实现懒加载的前提:  1 实体类不能是final的 2 能实现懒加载的对象都是被CGLIB(反射调用)改

问一个hibernate的懒加载的问题

问题描述 问一个hibernate的懒加载的问题 1.我定义Survey和Page类,Survey设置Page的集合属性,然后建立双向关联,我故意把集合注解成懒加载... 2.然后我通过这段代码把Page集合重数据库取出 3.然后调用Survey的get方法得到集合,再把Page一个一个放进集合中去 4.然后再外面迭代Survey的page集合抛异常是懒加载为什么?为什么?为什么? /* *通过survey的id取出survey *(我用spring在这方法上面配置了事务) */ public