I am using Hibernate latest version 4.3.5.Final
.
My hibernate.cfg.xml
file content:
From the hibernate source code here, a StandardServiceRegistryBuilder instance is used to get different services from hibernate.cfg.xml, for example serviceRegistry.getService( JdbcServices.class )
, serviceRegistry.getService( CacheImplementor.class )
.
The old configuration.buildSessionFactory()
method is as below now:
public SessionFactory buildSessionFactory() throws HibernateException {
Environment.verifyProperties( properties );
ConfigurationHelper.resolvePlaceHolders( properties );
final ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder()
.applySettings( properties )
.build();
setSessionFactoryObserver(
new SessionFactoryObserver() {
@Override
public void sessionFactoryCreated(SessionFactory factory) {
}
@Override
public void sessionFactoryClosed(SessionFactory factory) {
( (StandardServiceRegistryImpl) serviceRegistry ).destroy();
}
}
);
return buildSessionFactory( serviceRegistry );
}