org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role

这个是懒加载异常,就是在查询时没有加载关联表的对象,你读取这个关联对象的时候,hibernate的session已经关闭,所以无法获取对象。
可以在配置文件里关闭懒加载 lazily=false

使用事务

    @Override
    @Transactional
    public void run(ApplicationArguments args) throws Exception {
        initOrders();
        findOrders();
    }
@SpringBootApplication
@EnableJpaRepositories
@EnableTransactionManagement
@Slf4j
public class JpaDemoApplication implements ApplicationRunner {

原文地址:https://www.cnblogs.com/ukzq/p/12557191.html

时间: 2024-11-02 23:48:52

org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role的相关文章

ssh框架错误:org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role。

在做ssh项目练习的时候出现问题: org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role 原因在于hibernate的懒加载出现的问题.在多方中的一方的配置没有指定加载方式,而且一方中的多方是懒加载,因此在获取一方的时候一方是获取到了,但是再获取多方的时候session已经关闭了,这时候会获取不到多方信息,因此报错. 解决办法: 将一方中的多方(one-to-many

懒加载异常 org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role

@OneToMany(cascade={CascadeType.REFRESH,CascadeType.REMOVE},mappedBy="parent",fetch=FetchType.EAGER) private Set<ProductType> childTypes = new HashSet<ProductType>(); 这个是懒加载异常,就是在查询时没有加载关联表的对象,你读取这个关联对象的时候,hibernate的session已经关闭,所以无法获

【转】hibernate懒加载的问题,failed to lazily initialize a collection of role

hibernate懒加载的问题,failed to lazily initialize a collection of role hibernate懒加载的问题,failed to lazily initialize a collection of role,有需要的朋友可以参考下. 今天往项目里添加了一个many-to-many的关联,发现即便是设置lazy=false也还是会报连接关闭的错误,打死都取不到数据. 可是原来有的many-to-one关联,设置了lazy=false是没问题的啊.

failed to lazily initialize a collection of role

在springmvc hibernate的映射文件中如图设置多对多关联,为了显示查询的的列表,打印json数据,我们刚开始是这样设置如下的设置文件 然后进行查询操作 结果报 failed to lazily initialize a collection of role错误 假如这样设置 结果就是这样的 正常打印json数据 为什么会这样? 首先,lazy是延时的意思,如果lazy=true,那么就是说数据库中关联子表的信息在hibernate容器启动的时候不会加载,而是在你真正的访问到字表非标

failed to lazily initialize a collection of role:XXX, no sessi

系统 框架  springMVC+hibernate 这种情况 由于 hibernate 的 懒汉机制,和 Spring 事务机制(不确定)造成的 由于 spring 配置的时候,在service 层关闭的了会话,controller(view层)根据对象转json的时候,由于 get的该属性,懒加载 执行了一次,由于session 已经关闭了,所以 就回报错 解决方法: 1. spring 配置的时候,事务提交,配置在 view层 2. 转json的忽略该字段,@JsonIgnore 各有利弊

java 不寻常的问题 No bean named &amp;#39;sessionFactory&amp;#39; is defined 和 initialize a collection of role

左右java的"No bean named 'sessionFactory' is defined "  现在经常出去SHH或在其框架内Sping+JPA使用底部HIbernate annotation 的实现:出现异常的原因是找不到sessionFactory bean. 原因有例如以下: 1.在Many-to-one  或是many-to-many 时候 我们设置了fetchType="lazy" 延时载入. 解决这个问题的方法在web.xml中,增加  ope

java 异常问题 No bean named &#39;sessionFactory&#39; is defined 和 initialize a collection of role

关于java的"No bean named 'sessionFactory' is defined "  频繁的出现在与SHH框架中或是在与Sping+JPA底层使用了HIbernate annotation 的实现:出现异常的原因是找不到sessionFactory bean. 原因有如下: 1.在Many-to-one  或是many-to-many 时候 我们设置了fetchType="lazy" 延时加载.解决问题的方法在web.xml中,加入  openS

延迟加载 ERROR org.hibernate.LazyInitializationException:42 - could not initialize proxy - ...

no Session问题,即延迟加载 延迟加载的问题是指当我们调用完action中的某个方法,在jsp页面要显示我们想要的信息的时候,发现在dao中打开的session已经关闭了. 如下图,第一个箭头表示的是我们通过前台页面返回action,action会通过service层调用dao去访问数据库,当从数据库中把值取出来之后返回到action中,再返回到前台页面中去.我们知道,只有我们在调用某个类getter()方法的时候才会打开session,可惜的是,在hibernateTemplate中注

org.hibernate.LazyInitializationException

1.org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: com.chen.vo.Teacher.students, no session or session was closed 异常描述:运行以下方法出现.注:持久类Teacher与Student呈多对多关联. @Test//fail public void query2(){ List list = hibe