Не удалось заставить mysql connector j работать

#java #mysql #connector-j

#java #mysql #connector-j

Вопрос:

Я установил окружение classpath, но все равно получаю ошибку «Исключение: com.mysql.jdbc.Driver»

У вас есть какие-либо идеи, что может быть не так?

Вот мой тестовый код:

 import java.sql.*;

public class JdbcExample1 {

public static void main(String args[]) {
  Connection con = null;

  try {
    Class.forName("com.mysql.jdbc.Driver").newInstance();
    con = DriverManager.getConnection("jdbc:mysql:///test", "root", "secret");

    if(!con.isClosed())
      System.out.println("Successfully connected to MySQL server...");

  } catch(Exception e) {
    System.err.println("Exception: "   e.getMessage());
  } finally {
    try {
      if(con != null)
        con.close();
      } catch(SQLException e) {}
    }
  }
}
  

Ответ №1:

Исключение:com.mysql.jdbc.Driver

Скорее всего, это не полное сообщение об ошибке. Я предполагаю, что это ClassNotFoundException, и у вас просто нет драйвера MySQL JDBC как части вашего classpath.

При запуске вашей программы вам также необходимо указать драйвер

java -cp .;mysql-connector-java-5.1.7-bin.jar JdbcExample1
(Это предполагает JdbcExample1.class и файл .jar находятся в текущем каталоге)

Я установил окружение classpath

Установка CLASSPATH переменной окружения больше не требуется (на самом деле в этом никогда не было необходимости). На самом деле это создает больше проблем, чем решает.

Используйте приведенный выше синтаксис, чтобы указать путь к вашему драйверу и запустить вашу программу

Ответ №2:

Как говорит horse, я почти уверен, что это ‘ClassNotFoundException’. Для уверенности добавьте «e.printStackTrace();» в свой catch-блок.

Всегда лучше получить трассировку стека.