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

出现错误的根本原因不在于配置文件,而是在于hibernate的SessionFactory的生成策略

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

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

你可能感兴趣的:(hibernate)