Springboot2 hibernate5 no transaction is in progress

由于之前用的springMVC,使用sessionFactory,后来在springBoot中使用sessionFactory报错 no transaction is in progress。

后来查找了大量资料解决了这个问题:

https://stackoverflow.com/questions/50650041/spring-boot-hibernate-no-transaction-is-in-progress

关键注意的是:

在springBoot2中使用,这个是hibernate5版本

@PersistenceContext
protected EntityManager em;
private Session getCurrentSession() {
    Session session = em.unwrap( Session.class );
    return session;
}

在springMVC中使用,这个是hibernate4版本

@Autowired(required=true)
    @Qualifier(value="sessionFactory")
    private SessionFactory sessionFactory;

public Session getCurrentSession() {      
            return this.sessionFactory.getCurrentSession();  
    }

 

你可能感兴趣的:(Springboot2 hibernate5 no transaction is in progress)