Я попытался подключиться к моей базе данных MySQL (версия 14.4 Distrib 5.7.22, для Linux (x86_64)) в моем проекте Java 10.Вот как я получаю драйвер через Gradle (снимок моего build.gradle):
dependencies {
implementation 'mysql:mysql-connector-java:8.0.11'
}
Это класс, который я использую для подключения к моей базе данных:
package database;
import java.sql.*;
public class DatabaseConnection {
private Connection conn = null;
public DatabaseConnection() {
}
private boolean openConnection() {
try {
Class.forName("com.mysql.cj.jdbc.Driver");
}
catch(Exception ex) {
System.out.println("MySQL driver couldn't be loaded!");
}
try {
conn = DriverManager.getConnection("jdbc:mysql://localhost/database",
"user","pw");
}
catch (SQLException e) {
e.printStackTrace();
return false;
}
return true;
}
private boolean closeConnection() {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
return false;
}
return true;
}
public boolean createUser(String userID, String username) {
if (!openConnection())
return false;
try {
Statement stmt=conn.createStatement();
stmt.executeUpdate("INSERT INTO table(User Name, UserID) VALUES("+username+","+userID+")");
}
catch (SQLException e) {
e.printStackTrace();
closeConnection();
return false;
}
closeConnection();
return true;
}
}
Всегда происходит сбой при
MySQL driver couldn't be loaded!
java.sql.SQLException: No suitable driver found for
jdbc:mysql://localhost/database
at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:702
at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:228
at database.DatabaseConnection.openConnection(DatabaseConnection.java:2)
at database.DatabaseConnection.createUser(DatabaseConnection.java:39)
at connect.GameServer.start(GameServer.java:31)
at Main.main(Main.java:10)
Исключение, выдаваемое в Class.forName("com.mysql.cj.jdbc.Driver");
, является ClassNotFoundException.
Что я делаю неправильно?