相关疑难解决方法(0)

如何避免嵌套事务不支持错误?

我需要确保许多并发用户能够访问数据库.虽然在每次提交后我都会关闭会话,但有时我的代码会遇到以下错误,但是当我执行相同的操作几次时,它会超过错误并起作用.

我的休眠是4.2.1.Final

Messages:   
nested transactions not supported
File:   org/hibernate/engine/transaction/spi/AbstractTransactionImpl.java
Line number:    152
Run Code Online (Sandbox Code Playgroud)

我的守则

session = HibernateUtil.getSession();
session.getTransaction().begin();       OR session.beginTransaction();
       ...   to do ....
session.getTransaction().commit();
session.close();                        OR HibernateUtil.closeSession();
Run Code Online (Sandbox Code Playgroud)

的HibernateUtil

import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;
import org.hibernate.service.ServiceRegistryBuilder;

public class HibernateUtil {

   private static ServiceRegistry serviceRegistry;
   private static final ThreadLocal<Session> threadLocal = new ThreadLocal();
   private static SessionFactory sessionFactory;
    private static SessionFactory configureSessionFactory() {
        try {

            Configuration configuration = new Configuration();
            configuration.configure();
            serviceRegistry = new ServiceRegistryBuilder()
                                 .applySettings(configuration.getProperties())
                                 .buildServiceRegistry();
            sessionFactory …
Run Code Online (Sandbox Code Playgroud)

hibernate transactions java-ee

23
推荐指数
3
解决办法
7万
查看次数

标签 统计

hibernate ×1

java-ee ×1

transactions ×1