首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JDBC和SQLException

JDBC和SQLException
EN

Stack Overflow用户
提问于 2011-08-20 01:58:05
回答 1查看 398关注 0票数 0

我有一个Java类,有几种方法,如下所示

代码语言:javascript
复制
public void someMethod (Collection<object> objects) throws Exception

这个程序有时会像Oracle死锁一样抛出java.sql.SQLException,但是在服务器端,我没有看到一个跟踪文件。

是否可以将方法签名修改为更具体的内容,如

代码语言:javascript
复制
public void someMethod (Collection<object> objects) throws SQLException

然后在方法中尝试中准备好的语句,尝试捕获块,它会帮助捕获实际的异常吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-08-20 09:15:43

将方法声明为throws Exception并不是很好的实践。您应该明确说明您的方法抛出了哪些异常,因此throws SQLException更好,更具有描述性。

无论您使用的是throws Exception还是throws SQLException,在该方法调用周围的try/catch块都能工作。如果需要捕获死锁,则捕获SQLException并在那里处理它。

如果您在那里不处理它,那么这个异常将使堆栈冒泡,直到它被捕获,或者程序(或线程)退出。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7129104

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档