问题描述:
项目中有多个一对多的数据结构,多个一对多注解设置fetch = FetchType.EAGER就会出现这个启动报错:
@OneToMany(cascade = {CascadeType.PERSIST, CascadeType.MERGE}, orphanRemoval = true, fetch = FetchType.EAGER)
解决方案:
1.使用@Fetch(FetchMode.SUBSELECT)注解。
仍然报错:
org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role,could not initialize proxy - no Session
2.配置文件添加enable_lazy_load_no_trans注解。
spring:
jpa:
properties:
hibernate:
enable_lazy_load_no_trans: true
注解设置为true,没有事务的情况下允许懒加载,服务就能正常运行了!