java事务管理

事务应该是程序中必须要考虑的事情,现在的开发框架中后台部分大都采用了hibernate或者spring,因此添加事务也是比较容易的。但是如果没有用到hibernate或者spring,后台部分的设计用的是纯JDBC,那么该如何添加事务呢?结合所维护的一个项目谈一下自己的想法。

我们的项目后台用的是一个开源控件DbUtils,其实它就是对JDBC进行了一些封装,具有免除大量建立连接释放连接等操作,使代码清晰便于维护等优点。项目原来是没有加事务控制的,现在需要添加,思路如下:

方法1:首先要设计一个ConnectionMange的类,在类里面要对Connection的对象统一管理,然后在DAO层的方法里(当然是指具有更新操作的方法)传入一个Connection的对象,这个对象并不实例化,实例化的过程在Service层调用该DAO的方法时在进行,当然事务的所有操作都要在Service层进行。

方法2:DAO层的方法声名中不传入Connection的对象,在方法体中从ConnectionMange获得具体连接,仍旧在Service层调用该DAO的方法时进行事务的所有操作。

由于后台采用的是控件DbUtils,因此DAO层的方法声名中原来并没有Connection的对象,所以如果按照方法1代码改动将会非常大,所以按照方法2来修改了。

其实事务就是确保不同的线程公用一个Connection,下面推荐两个网址,对JDBC的事务有很详细的说明:

http://www.ublog.cn/user1/11/archives/2006/21953.html

http://hi.baidu.com/luodaijun/blog/item/2ee9cbbf4c960e0a19d81fad.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值