多语言展示
当前在线:1871今日阅读:197今日分享:19

spring学习(35)-事务的其他属性(4)

今天小编继续学习spring,今天继续学习spring中事务,今天介绍一下事务的一些属性。
工具/原料
1

电脑一台

2

eclipse

isolation属性

在事务中使用isolation属性来指定事务的隔离级别,最常用的取值为READ_COMMITTED,如下图:

readOnly属性

在事务中,使用readOnly指定事务是否为只读,表示这个事务只读取数据不更新数据,这样可以帮助数据库引擎优化事务,若真的是一个只读取数据库数据值的方法,应设置为readOnly=true,如下图:

timeout属性
1

在事务中,使用timeout属性指定强制回滚之前事务可以占用的时间,下图代码中指定事务的timeout为2也就是指定强制回滚之前事务可以占用的时间为2秒,然后在内部方法中使用sleep方法延时一下,这里设置延时为1秒,如下图:

2

运行可以从junit中看到因为sleep时间未超过在事务中设置的timeout值,所以程序正常运行,如下图:

3

这里不修改事务的timeout时间,这里修改方法中的sleep方法的时间为3秒,这个时候这个sleep的时间就超过了事务设置的timeout属性的时间,如下图:

4

运行可以从junit中看到程序运行异常,原因是【Transaction timed out】,所以timeout属性可以帮助我们控制方法的用时,如下图:

注意事项
1

个人观点,仅供参考。

2

感谢阅读。

推荐信息