org.hibernate.LazyInitializationException: could not initialize proxy [com.panda.girl.domain.Girl#1] 2021-11-13 15:02 106阅读 0赞 spring boot——一个懒加载问题 报错信息 org.hibernate.LazyInitializationException: could not initialize proxy [com.panda.girl.domain.Girl#1] - no Session …… at com.panda.girl.domain.Girl_$$_jvstbdd_0.getSalary(Girl_$$_jvstbdd_0.java) at com.panda.girl.GirlServiceTest.findOneTest(GirlServiceTest.java:24) 一、这是个问题 情形如下 (1)简单的单元测试类 @RunWith(SpringRunner.class) @SpringBootTest public class GirlServiceTest \{ @Autowired private GirlService girlService; @Test public void findOneTest(){ Girl girl = girlService.findOne(1); Assert.assertEquals(new Double(500), girl.getSalary()); } \} (2)简单的service @Service public class GirlService \{ @Autowired private GirlRepository repository; //一个继承JpaRepository<Girl, Integer>的类 /** * 通过id查询一位女生的信息 */ public Girl findOne(Integer id){ return repository.getOne(id); } \} (3)简单的实体类 @Entity public class Girl \{ @Id @GeneratedValue private Integer id; private Double salary; public Girl() { } public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public Double getSalary() { return salary; } public void setSalary(Double salary) { this.salary = salary; } \} 奇怪的错误: 运行测试类型以后,报错 org.hibernate.LazyInitializationException: could not initialize proxy \[com.panda.girl.domain.Girl\#1\] - no Session …… at com.panda.girl.domain.Girl\_KaTeX parse error: Expected group after '\_' at position 26: ….getSalary(Girl\_̲\_jvstbdd\_0.java) at com.panda.girl.GirlServiceTest.findOneTest(GirlServiceTest.java:24) 二、问题虽然解决了 ✔(1)在实体类上增加注解@Proxy(lazy = false) @Entity @Proxy(lazy = false) //解决懒加载问题 public class Girl \{ …… \} ✔(2)在测试类报错的方法上增加注解@Transactional @Test @Transactional //解决懒加载问题 public void findOneTest()\{ Girl girl = girlService.findOne(1); Assert.assertEquals(new Double(500), girl.getSalary()); \} ✔(3)在application.yml配置文件中增加配置 spring: jpa: properties: hibernate: enable\_lazy\_load\_no\_trans: true \#解决懒加载问题 三、但是有一些疑问 (1)为什么会出现懒加载的错误? (2)以上三种解决方法,分别有什么其他影响?利弊如何? (3)第二种增加事务注解的方法,为什么就能解决懒加载问题?
相关 could not initialize proxy - no Session 这是一个精典的问题: 因为我们在hibernate里面load一个对象出来时,用到的是代理对象,也就是说当我们在执行load方法时并没有发sql语句,而是返回一个proxy 墨蓝/ 2021年06月24日 14:00/ 0 赞/ 368 阅读
相关 could not initialize proxy - no Session 这是一个精典的问题: 因为我们在hibernate里面load一个对象出来时,用到的是代理对象,也就是说当我们在执行load方法时并没有发sql语句,而是返回一个proxy 亦凉/ 2021年09月25日 21:52/ 0 赞/ 263 阅读
相关 org.hibernate.LazyInitializationException: could not initialize proxy [com.panda.girl.domain.Girl#1] spring boot——一个懒加载问题 报错信息 org.hibernate.LazyInitializationException: could not in 客官°小女子只卖身不卖艺/ 2021年11月13日 15:02/ 0 赞/ 107 阅读
相关 PL/SQL initialization error could not initialize PL/SQL initialization error could not initialize 我在电脑上安装了Oracle11 64位的,使用CMD可以完美连接数据库 妖狐艹你老母/ 2022年05月28日 12:49/ 0 赞/ 29 阅读
相关 could not initialize proxy - no Session could not initialize proxy - no Session 你是不是已经配置了`openSessionInView`还报这个错,不是,那还不去配置!! - 日理万妓/ 2022年06月17日 05:53/ 0 赞/ 46 阅读
相关 异常Hibernate:could not initialize proxy - no Session 这个从字面上就可以看出:不能初始化,没有session。也就说主要原因是因为session关闭了。 在[hibernate][]中,<many-to-one…/>中的l 谁借莪1个温暖的怀抱¢/ 2022年07月11日 08:18/ 0 赞/ 181 阅读
相关 could not initialize proxy - no Session 这是一个精典的问题: 因为我们在hibernate里面load一个对象出来时,用到的是代理对象,也就是说当我们在执行load方法时并没有发sql语句,而是返回一个pro 我会带着你远行/ 2022年08月01日 13:40/ 0 赞/ 146 阅读
相关 JPA报could not initialize proxy异常 Q: 问题描述:查考试表的时候 用org.springframework.data.repository.CrudRepository\findById 正常。 用org.s 比眉伴天荒/ 2022年11月21日 01:06/ 0 赞/ 318 阅读
相关 org.hibernate.LazyInitializationException: could not initialize proxy 错误1: org.hibernate.LazyInitializationException: could not initialize proxy [com.imo 骑猪看日落/ 2022年12月31日 01:14/ 0 赞/ 74 阅读
相关 org.hibernate.LazyInitializationException: could not initialize proxy [beans.Student#1] - no Session 转载出处:https://www.bilibili.com/video/BV1uT4y1g7Qo?p=431&spm\_id\_from=pageDriver 分析:Acti 素颜马尾好姑娘i/ 2023年01月13日 15:55/ 0 赞/ 43 阅读
还没有评论,来说两句吧...