hibernate主配置文件中指定session与当前线程绑定

配置一条属性

<property name="hibernate.current_session_context_class">thread</property>

dao层 (以下代码仅是演示)

public class CustomerDaoImp implements CustomerDao {

	@Override
	public void save(Customer customer) {
		//1.获取当前线程绑定的session
		Session session = HibernateUtils.getCurrentSession();
	
	        //3.执行保存
		session.save(customer);
	}
}

 service层

public class CustomerServiceImp implements CustomerService {
	private CustomerDao dao=new CustomerDaoImp();
	@Override
	public void save(Customer customer) {
                //获取当前线程绑定的session
		Session session = HibernateUtils.getCurrentSession();
		//开启事务
		Transaction tx = session.beginTransaction();
		
		try {
			dao.save(customer);	
		} catch (Exception e) {
			e.printStackTrace();
			tx.rollback();
		}
		//提交事务
		tx.commit();
	}
原文地址:https://www.cnblogs.com/houchen/p/10630871.html