hibernate的Transaction接口理解

Transaction接口是对事物实现的一个抽象,这些实现包括JDBC事务等。Hibernate框架中的事物通过hibernate.cfg.xml文件选择JDBC。在transaction接口中定义了cimmit()和rollback()两个方法,前者是提交事务的方法,后者是回滚事务的方法。

调用Session的beginTransaction() 方法生成一个Transaction实例。

Transaction ts=session.beginTransaction();

一个Session实例可以与多个Transaction实例相关联,但一个特定的Session实例在任何时候必须与至少一个未提交的Transaction实例相关联。


try{
		SessionFactory sf=new Configuration().configure("hibernate.cfg.xml").buildSessionFactory();
		Session session=sf.openSession();
		Transaction ts=session.beginTransaction();
		Query query=session.createQuery("from UserInfoPO u where u.age>?");
		query.setInteger(0, 20);
		List<UserInfoPO> list=query.list();
		for(int i=0;i<list.size();i++){
			UserInfoPO ui=(UserInfoPO)list.get(i);
			System.out.println(ui.getUsername());
		}
		ts.commit();
		session.close();
		
	}catch(HibernateException e){
		e.printStackTrace();
	}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值