92 votes

Chargement de la classe `com.mysql.jdbc.Driver'. Cette classe est obsolète. La nouvelle classe de pilote est `com.mysql.cj.jdbc.Driver'.

C'est l'avertissement que je reçois dans la console, je suis confus avec cet avertissement :

Loading class `com.mysql.jdbc.Driver'. 
This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'.
The driver is automatically registered via the SPI and manual loading 
of the driver class is generally unnecessary.

5voto

Mr.tangx Points 41

Ceci est dû au fait que la version de mysql à connecter est inférieure à la version du pilote mysql. Beaucoup de gens disent que com.mysql.jdbc.Driver est changé en com.mysql.cj.jdbc.Driver , bien que cela ne résout pas le problème, mais cela devrait également attirer l'attention.

0 votes

Cela a résolu le problème pour moi. Bien que dans mon cas, les autres messages d'erreur indiquaient 'com.mysql.cj.jdbc'.

4voto

Lova Chittumuri Points 621

Veuillez supprimer les spring.datasource.driver-class-name dans le application.properties et ajoutez la propriété ci-dessous.

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

3voto

Riflan Ahmed Points 11
        // The newInstance() call is a work around for some
        // broken Java implementations
        Class.forName("com.mysql.cj.jdbc.Driver").newInstance();

3voto

J'ai changé mon application.conf comme ci-dessous. Cela a résolu le problème.

Avant le changement :

slick {
  dbs {
    default {
      profile = "slick.jdbc.MySQLProfile$"
      db {
        driver = "com.mysql.jdbc.Driver"
        url = "jdbc:mysql://localhost:3306/test"
        user = "root"
        password = "root"
      }
    }
  }
}

Après le changement :

slick {
  dbs {
    default {
      profile = "slick.jdbc.MySQLProfile$"
      db {
        **driver = "com.mysql.cj.jdbc.Driver"**
        url = "jdbc:mysql://localhost:3306/test"
        user = "root"
        password = "root"
      }
    }
  }
}

2voto

Dans mon cas, j'avais une ligne Class.forName("com.mysql.jdbc.Driver") ; après avoir supprimé cette ligne, le code fonctionne bien si vous avez une ligne pour charger "com.mysql.jdbc.Driver", supprimez-la, elle n'est plus nécessaire.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X