在java中如何捕捉mysql的异常

xiaopengzi 2011-11-07 03:34:40
我的java程序中用到了mysql数据库,我想做的是一旦不能正常连接到数据库则抛出异常,使用程序能根据判断做其它的操作

如:
public Student loadById(int id)throws Exception{

Student stu;
Session s = Hibernate.getSessionFactory.openSession();
Query q = s.createQuery("from Student where id ='"+id"'")
try{
stu = (Student)q.list().get(0);
}
catch(Exception e){
throw e;
}
s.close();
return stu;
}

当由于网络原因或其它原因无法正常连接到数据库时,标红的地方就会报错,但是,用try-catch是捕捉不到的
我该怎么处理,或者大家 有什么其它的好的方法,可以让我能够捕捉到MYSQL产生的异常
...全文
521 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaopengzi 2011-11-08
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 cherryms 的回复:]

catch(SQLException e){
[/Quote]

这个也捕捉不到,而且还会提示,不有地方抛出SQLException
CherryMs 2011-11-08
  • 打赏
  • 举报
回复
catch(SQLException e){
xiaopengzi 2011-11-08
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 rucypli 的回复:]

再起个线程专门做这个事情
[/Quote]

不好意思,我不知道新启的线程该怎么来捕捉这个异常:还是在
try{
stu = (Student)q.list().get(0);
}
catch(Exception e){
throw e;
}这个地方加try catch吗?
rucypli 2011-11-07
  • 打赏
  • 举报
回复
再起个线程专门做这个事情

56,678

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧