DriverManager.getConnection () возвращает ноль, а не объект подключения - PullRequest
0 голосов
/ 25 апреля 2011

Я пытаюсь подключиться к базе данных Oracle через JDBC. Используя следующий код:

Connection c = null;
try {
     Class.forName("oracle.jdbc.driver.OracleDriver");
     c = DriverManager.getConnection(connURL, userID, password);
 } catch (SQLException se) {
     System.out.println(se.getMessage());
 } catch (Exception e) {
     System.out.println(e.getMessage());
 }

По какой-то причине исключение не выдается, но c остается нулевым - что это значит?

Обновление:

Оказывается, мы получили исключение - Class not found: "oracle.jdbc.driver.OracleDriver" - у нас были классы odbc вне пути к классам.

1 Ответ

1 голос
/ 25 апреля 2011

Это было бы легче заметить, если бы вы обрабатывали свои исключения по-другому. Просто напечатать сообщение об исключении и двигаться дальше - редко правильная вещь. Что вы можете сделать, если соединение с базой данных null? Если вы выдаете исключение, указывающее, что соединение недоступно, то любая подпрограмма, пытающаяся установить соединение с базой данных, может предупредить пользователя о возможном сбое системы, зарегистрировать ошибку и отправить электронное письмо системному администратору (например). Как вы обнаружили, просто возвращение null менее очевидно для устранения неполадок.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...