當我們去拿hibernate4的sessionFactory時,我們發現原來使的一直很順手的new Configuration().configure().buildSessionFactory()中的buildSessionFactory方法已經過期了,取而代之的是buildSessionFactory(ServiceRegistry serviceRegistry)方法。查看ServiceRegistry的構造方法,頓時感覺天旋地轉,這相當地令人抓狂,不過hibernate可能有其自己的考慮。
經過自己去google,發現了一段經典的取ServiceRegistry的代碼,不敢獨享,特貼出來與大家共享!
private static SessionFactory sessionFactory;
private static ServiceRegistry serviceRegistry;
private static SessionFactory configureSessionFactory() throws HibernateException {
Configuration configuration = new Configuration();
configuration.configure();
serviceRegistry = new ServiceRegistryBuilder().applySettings(configuration.getProperties()).buildServiceRegistry();
sessionFactory = configuration.buildSessionFactory(serviceRegistry);
return sessionFactory;
}
原文地址:http://stackoverflow.com/questions/8621906/is-buildsessionfactory-deprecated-in-hibernate-4