本次使用hibernate 4.3.11
获取SessionFactory的方法太乱,搞不清楚了
package com.test.db;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;
import org.hibernate.service.ServiceRegistryBuilder;
public class HibernateTest {
private static SessionFactory sessionFactory = null;
private static Configuration configuration = null;
private static ServiceRegistry serviceRegistry = null;
private static Session session = null;
public static void main(String[] args) {
session = getSessionFactory3().openSession();
System.out.println(session);
session.close();
}
// configuration.buildSessionFactory()方法已过期
public static SessionFactory getSessionFactory1() {
configuration = new Configuration().configure();
sessionFactory = configuration.buildSessionFactory();
return sessionFactory;
}
// org.hibernate.service.ServiceRegistryBuilder 类已过期
// 用hibernate 5.1.0测试 这个类已经不存在
public static SessionFactory getSessionFactory2() {
configuration = new Configuration().configure();
serviceRegistry = new ServiceRegistryBuilder().applySettings(configuration.getProperties()).buildServiceRegistry();
sessionFactory = configuration.buildSessionFactory(serviceRegistry);
return sessionFactory;
}
public static SessionFactory getSessionFactory3() {
configuration = new Configuration().configure();
serviceRegistry = new StandardServiceRegistryBuilder().applySettings(configuration.getProperties()).build();
sessionFactory = configuration.buildSessionFactory(serviceRegistry);
return sessionFactory;
}
}