社区
Java SE
帖子详情
我的connection.rollback()为什么必须用try..catch
sdyqingdao
2009-12-14 12:25:57
我抄官方的例子,
try{
....
}
catch (sqlexception e){
connection.rollback()
}
但编译不通过,说connection.rollback()抛出的异常应被被捕获.搞得我只好
try{
....
}
catch (sqlexception e)[
try{
connection.rollback()
}
catch....
}
...全文
471
8
打赏
收藏
我的connection.rollback()为什么必须用try..catch
我抄官方的例子, try{ .... } catch (sqlexception e){ connection.rollback() } 但编译不通过,说connection.rollback()抛出的异常应被被捕获.搞得我只好 try{ .... } catch (sqlexception e)[ try{ connection.rollback() } catch.... }
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
crazylaa
2009-12-14
打赏
举报
回复
对头,底层抛出的异常你必须捕获,必须这样,没的道理可言。
一定要道理,那只能说“玩啥,就得尊重啥玩意儿的规则”。
iamrf
2009-12-14
打赏
举报
回复
rollback需要捕获异常的原因,是因为只有当你在一个Transaction中的相关操作,如果有一步出现异常则发生回滚。但回滚是要有一些条件的,第一你这个Transaction必须是同一个,还有你的Connection不能关闭,如果在执行代码的时候发生了致命性错误,导致Connection意外关闭了,则这个Transaction是不能正确回滚的。当这些条件满足时才能进行回滚,所以rollback要加try{} catch(){}以保证如果出现意外情况事物不能回滚时的操作。
sean1203
2009-12-14
打赏
举报
回复
没错误怎么要rollback呢?
那当然是出异常
才来roll
捕获异常就是try catch
所以得
justinavril
2009-12-14
打赏
举报
回复
抛出SQLException,而它是一种checked exception,所以必须显示地捕获处理。
苍蝇①号
2009-12-14
打赏
举报
回复
自己补上就行了,可能是官网的疏忽也可能是你看的失误,总之能把问题搞定才是我们需要的
网站推广优化yetaoaiueo
2009-12-14
打赏
举报
回复
官方的代码楼主没看全
crazylaa
2009-12-14
打赏
举报
回复
官方的例子有可能只抄了其中一段。其实它在外面捕获了。比如
public static.... aa(){
try{
con.rollback()
}catch(Exception e){
。。。。
}
}
sdyqingdao
2009-12-14
打赏
举报
回复
为什么官方的例子不捕获呢?
[Quote=引用 1 楼 crazylaa 的回复:]
对头,底层抛出的异常你必须捕获,必须这样,没的道理可言。
一定要道理,那只能说“玩啥,就得尊重啥玩意儿的规则”。
[/Quote]
java jdbc提交 回滚_java – 为什么我
必须
在JDBC中使用回滚?
本文探讨了在数据库操作中使用
connection
.
rollback
()的重要性。通过一个转账的例子说明了即使事务未提交,为何仍需显式调用回滚来确保数据一致性。
try
-with-resource手动
rollback
探讨了在Java中使用
try
-with-resource语法糖时遇到的SQLException处理难题,尤其是在手动回滚事务时的局限性。文章提供了正确的解决方案,即在内部嵌套一个
try
-
cat
ch
块来确保能够访问并操作
Connection
对象。
java事物操作
本文介绍了数据库事务处理的基本流程及ACID特性的重要性。通过示例代码详细展示了如何使用Java进行事务控制,包括开启事务、执行SQL语句、提交或回滚等关键步骤。
mysql ef 事务_MySql EF事务using不会自动
Rollback
的bug
本文揭示了在使用Entity Framework to MySql时,不正确处理事务可能导致的Anerroroccurredwhilestartingatransactionontheprovider
connection
错误,强调了
try
-
cat
ch
和显式
Rollback
的重要性,以防Nested transactions bug。
Jdbc
try
cat
ch
本文介绍了一个使用Java进行Oracle数据库事务处理的例子,通过两个更新语句演示了如何在Oracle数据库中实现事务的提交与回滚。
Java SE
62,622
社区成员
307,255
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章