Je tente de me connecter à la base de données, mais j'obtiens cette erreur.Erreur de connexion Java JDBC MySQL: ClassNotFoundException
c'est le code
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.logging.Level;
import java.util.logging.Logger;
public class JDBCInsertValues {
public static void main(String[] args) throws Exception {
Class.forName("com.mysqljdbc.Driver");
Connection conn = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/Drivers");
PreparedStatement statement = conn.prepareStatement("SELECT * fom employee");
ResultSet result = statement.executeQuery();
while(result.next()){
System.out.println(result.getString(1)+ " "+ result.getString(2));
}
}
}
et c'est l'erreur im obtenir.
course:
Exception in thread "main" java.lang.ClassNotFoundException: com.mysqljdbc.Driver
at java.net.URLClassLoader$1.run(URLClassLoader.java:372)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:259)
at JDBCInsertValues.main(JDBCInsertValues.java:14)
Java Result: 1
BUILD SUCCESSFUL (total time: 0 seconds)
j'ai pilote situé sur la bibliothèque de projets.
qui a fonctionné, mais je suppose que maintenant je suis obtenir une autre erreur qui est Exception dans le thread « principal » java.sql.SQLException: Accès refusé pour l'utilisateur « root » @ « localhost » (en utilisant mot de passe: OUI) c'est le code que j'utilise pour la connexion Connexion conn = DriverManager.getConnection ( "jdbc: mysql: // localhost: 3306/Drivers", "root", "root"); une idée pourquoi? – user3594235
... ou simplement omettre complètement l'instruction 'Class.forName'. Il n'est généralement pas nécessaire ces jours-ci. (Les versions raisonnablement récentes de Java utilisent un mécanisme différent pour charger les pilotes JDBC.) –
@ user3594235 Si cette réponse résout votre question initiale, vous devez [accepter] (http://meta.stackexchange.com/a/5235/238021) et puis [posez une nouvelle question] (http://stackoverflow.com/questions/ask) si vous avez maintenant un problème différent à résoudre. –