在java web开发中,Hibernate的初始化类在不同版本下的实现方式不同。
在Hibernate4.0之前
SessionFactory sessionFactory = new Configuration().configure("hibernate.cfg.xml").buildSessionFactory();
在Hibernate4.x
// 创建一个 ServiceRegistry 对象: hibernate 4.x 新添加的对象
//hibernate 的任何配置和服务都需要在该对象中注册后才能有效.
ServiceRegistry serviceRegistry =
new ServiceRegistryBuilder().applySettings(configuration.getProperties()).buildServiceRegistry();
//创建一个 SessionFactory 对象
SessionFactory sessionFactory = configuration.buildSessionFactory(serviceRegistry);
或如下方式
StandardServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().applySettings(configuration.getProperties()).build();
//创建一个 SessionFactory 对象
SessionFactory sessionFactory = configuration.buildSessionFactory(serviceRegistry);
在Hibernate5.x
StandardServiceRegistry ssr = new StandardServiceRegistryBuilder().configure().build();
SessionFactory sessionFactory = new MetadataSources(ssr).buildMetadata().buildSessionFactory();