org.hibernate.TransactionException: nested transactions not supported错误的解决方案

时间:2021-07-14 10:45:01
出现错误的根本原因不在于配置文件,而是在于hibernate的SessionFactory的生成策略

在hibernate4中已经把原有的SessionFactory sessions = cfg.buildSessionFactory();
这种方法标记为过时的了。

在hibernate4中,构建SessionFactory 需要加入参数ServiceRegistry
这里给了一种可行的方式:
Java code?
1234 Configuration cfg = new Configuration().configure();StandardServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder()                    .applySettings(cfg.getProperties()).build();SessionFactory sessionFactory = cfg.buildSessionFactory(serviceRegistry);