package hibernate;
import org.hibernate.SessionFactory;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;
import java.util.Properties;
@SuppressWarnings("unused")
final class HibernateUtil {
private static final SessionFactory SESSION_FACTORY = buildSessionFactory();
private HibernateUtil() {
}
public static SessionFactory getSessionFactory() {
return SESSION_FACTORY;
}
public static void shutdown() {
getSessionFactory().close();
}
private static SessionFactory buildSessionFactory() {
try {
Configuration configuration = new Configuration().configure();
Properties properties = configuration.getProperties();
ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().applySettings(properties).build();
return configuration.buildSessionFactory(serviceRegistry);
} catch (Throwable ex) {
throw new ExceptionInInitializerError(ex);
}
}
}