HibernateUtils.java
package com.yzk.hibernate.util;
import org.hibernate.SessionFactory;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;
public class HibernateUtils {
private static final SessionFactory sessionFactory = buildSessionFactory();
private static SessionFactory buildSessionFactory() {
// Configuration configuration = new Configuration().configure();
// ServiceRegistry serviceRegistry = new
// StandardServiceRegistryBuilder()
// .applySettings(configuration.getProperties()).build();
// return configuration.buildSessionFactory(serviceRegistry);
Configuration configuration = new Configuration().configure();
ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder()
.applySettings(configuration.getProperties()).build();
return configuration.buildSessionFactory(serviceRegistry);
}
public static SessionFactory getSessionFactory() {
return sessionFactory;
}
}
调用方法
public void saveUser(User user) {
SessionFactory factory = HibernateUtils.getSessionFactory();
// Session session = factory.openSession();
Session session = factory.getCurrentSession();//自动关闭session和factory
session.beginTransaction();
session.save(user);
session.getTransaction().commit();//提交事务
factory.close();
}