如何在发生SQLException时调用自定义异常?

时间:2014-03-12 10:03:33

标签: java jdbc exception-handling sqlexception throws

假设我有以下代码行,

       Class.forName(JDBC_DRIVER);
       dbConnection = DriverManager.getConnection(DB_URL, USER, PASS);

现在我想要的是,当捕获到SQLException时,我想从SQLException的catch字段中抛出自定义异常,我的意思是它可以这样做还是有另一种方法可以这样做?

我的自定义异常是ErrorToDisplayException:

    public class ErrorToDisplayException extends Exception{

public ErrorToDisplayException(Throwable e) {
}
    }

我的代码是:

   try {        
    //Register JDBC driver
       Class.forName(JDBC_DRIVER);
       dbConnection = DriverManager.getConnection(DB_URL, USER, PASS);
   }catch(final SQLException se){
    // Handle errors for JDBC
       throw new ErrorToDisplayException(se);
   }

现在发生的事情是当编译器到达时        } catch(final SQLException se){ 它不会去它的身体而只是脱离,不知道为什么?

1 个答案:

答案 0 :(得分:1)

你的意思是这样的,或者我不明白?!

try {
    Class.forName(JDBC_DRIVER);
    dbConnection = DriverManager.getConnection(DB_URL, USER, PASS);
} catch (SQLException e) {
    throw new MyException(e);
}

或者你的意思是在所有地方用自己的类型替换一些标准异常?