最近项目用spring来管理事物,但是水平经验有限,所以请教一下有经验的人。
spring的事物默认抛出runtimeexception回滚,这样就够了么?程序会不会抛出其他异常从而导致不回滚,这就惨了,我为了保险起见设置了所有异常都回滚,这样会不会造成不必要的麻烦,问一下大家项目中一般都是怎么配的。
还有查询方法要不要加入事物管理器中,我设置为了PROPAGATION_REQUIRED,readOnly这样会不会降低查询的速度啊?
顺便提下,是不是加入事物管理了dao层方法中的数据库连接就不会关闭。因为我开始一个查询blob属性,查询没加入事物时,会报链接关闭的异常,安照网上说法,加入事物就好了。
[b]问题补充:[/b]
数据库连接池当然已经配好了,异常回滚我也知道,我是说你们一般是配的哪些异常回滚?是根据自己的业务还是就是runtimeexception,还是像我这样偷懒什么异常都回滚。
[b]问题补充:[/b]
我就是没发现有什么业务异常啊,就是怕事物中抛出了一些数据库操作错误,而这个异常又不是runtimeexception的子类,所以不回滚,我就弄了所有的exception,其实如果有自己业务的异常我让他继承runtimeexception就行了,自己的好控制,就怕不是自己的。呵呵。
spring 的事物配置
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- wanghaolovezlq 2010-01-12 20:28关注
这要看这个系统架构的定位,设计是怎么样的,有些项目就要定义一些业务异常类,
不过只要满足项目需求,怎么样都行本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报