在Hibernate中创建会话

时间:2014-07-30 13:40:45

标签: java hibernate orm sessionfactory

package session;

import org.hibernate.SessionFactory;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;
import java.util.*;
public class SessionCreate {

private static final SessionFactory sessionFactory = buildSessionFactory1();

private static SessionFactory buildSessionFactory1() {
Configuration configuration = new Configuration().configure(); // configuration
                                                                // settings
                                                                // from
                                                                // hibernate.cfg.xml

StandardServiceRegistryBuilder serviceRegistryBuilder = new StandardServiceRegistryBuilder();


serviceRegistryBuilder.applySettings(configuration.getProperties());

ServiceRegistry serviceRegistry = serviceRegistryBuilder.build();

return configuration.buildSessionFactory(serviceRegistry);
}

public static SessionFactory getSessionFactory() {
return sessionFactory;
 }

public static void shutdown() {
// Close caches and connection pools
getSessionFactory().close();
 }

}

我在计算机上安装了JRE8,然后将其恢复到JRE7,但仍然出现错误。请帮我解决一下这个。这是我得到的唯一错误:"默认构造函数未定义隐式超级构造函数Object()。必须定义一个显式的构造函数" SessionCreate类的错误。我应该制作什么样的构造函数? configuration.Properties()方法的另一个错误:"无法解析java.util.Properties类型。它是从所需的.class文件"

间接引用的

我已经搜索了很多解决方案.. 感谢。

1 个答案:

答案 0 :(得分:0)

如果您最近更改了JRE版本,则可能需要清理并重新编译代码,因为.class文件可能在两个版本之间不兼容。