Maison > Java > javaDidacticiel > Java `ClassNotFoundException : sun.jdbc.odbc.JdbcOdbcDriver` : pourquoi et comment y remédier ?

Java `ClassNotFoundException : sun.jdbc.odbc.JdbcOdbcDriver` : pourquoi et comment y remédier ?

Barbara Streisand
Libérer: 2024-12-03 09:13:13
original
948 Les gens l'ont consulté

Java `ClassNotFoundException: sun.jdbc.odbc.JdbcOdbcDriver`: Why and How to Fix It?

java.lang.ClassNotFoundException : sun.jdbc.odbc.JdbcOdbcDriver Exception se produisant : pourquoi ?

Lors de la tentative de connexion à une base de données MS Access à l'aide d'un DSN en Java , une exception courante rencontrée est java.lang.ClassNotFoundException : sun.jdbc.odbc.JdbcOdbcDriver. Ce problème se produit pour plusieurs raisons.

Cause : classe de pilote JDBC-ODBC manquante dans le chemin de classe

L'exception ClassNotFoundException est généralement levée lorsque la machine virtuelle Java (JVM) ne peut pas localiser la classe spécifiée, dans dans ce cas, le sun.jdbc.odbc.JdbcOdbcDriver. Pour résoudre ce problème, assurez-vous que le fichier JAR du pilote JDBC-ODBC est inclus dans le chemin de classe de votre application.

Pilote obsolète pour Java 8 et supérieur

Pour Java 8 et supérieur, le pilote JDBC -ODBC Bridge a été obsolète et supprimé. Par conséquent, tenter d'utiliser l'instruction Class.forName() pour sun.jdbc.odbc.JdbcOdbcDriver entraînera l'exception susmentionnée.

Solution : mise à jour pour Java 8 et supérieur

Pour Java versions 8 et supérieures, l'approche recommandée pour se connecter aux bases de données Access consiste à utiliser des pilotes JDBC alternatifs tels que UCanAccess. Voici un extrait de code mis à jour utilisant UCanAccess :

import net.ucanaccess.jdbc.UcanaccessDriver;

// ...

try {
    Class.forName("net.ucanaccess.jdbc.UcanaccessDriver"); // for MS Access with UCanAccess driver

    String conURL = "jdbc:ucanaccess://path/to/database.mdb";
    Connection con = DriverManager.getConnection(conURL);
    // ...
} catch (ClassNotFoundException ex) {
    // Handle exception
}
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal