Zusammenfassung der Probleme mit der Mysql-connector-java-Treiberversion

Zusammenfassung der Probleme mit der Mysql-connector-java-Treiberversion

Problem mit der Mysql-Connector-Java-Treiberversion

Da meine Datenbankversion 5.7.28 ist, treten bei der Verwendung von Java zum Herstellen einer Verbindung zu MySQL häufig Versionsprobleme auf.

  • com.mysql.jdbc.Driver ist in mysql-connector-java 5,
  • com.mysql.cj.jdbc.Driver ist in mysql-connector-java 6

Das Herstellen einer SSL-Verbindung ohne Serverauthentifizierung wird nicht empfohlen.
Die MySQL-Versionen 5.5.45+, 5.6.26+ und 5.7.6+ erfordern standardmäßig SSL-Verbindungen, sofern dies nicht explizit festgelegt wurde.
Um die Anforderungen von Anwendungen zu erfüllen, die derzeit keine SSL-Verbindungen verwenden, wird die Eigenschaft „verifyServerCertificate“ auf „false“ gesetzt.
Wenn Sie keine SSL-Verbindungen verwenden müssen, müssen Sie SSL-Verbindungen explizit deaktivieren, indem Sie useSSL=false festlegen.
Wenn Sie eine Verbindung per SSL herstellen müssen, geben Sie einen Truststore zur Serverzertifikatsüberprüfung an und legen Sie useSSL=true fest.

SSL – Secure Sockets Layer

Klasse „com.mysql.jdbc.Driver“ wird geladen. Dies ist veraltet. Die neue Treiberklasse ist „com.mysql.cj.jdbc.Driver“. Der Treiber wird automatisch über die SPI registriert und das manuelle Laden der Treiberklasse ist im Allgemeinen nicht erforderlich.

Fehlerursache:
Die von MySQL5 verwendete Treiber-URL ist com.mysql.jdbc.Driver, und MySQL6 und höher verwenden com.mysql.cj.jdbc.Driver. Wenn die Versionen nicht übereinstimmen, wird ein Fehler gemeldet, der darauf hinweist, dass die Treiberklasse veraltet ist.
Lösung:
Durch Ändern des Treiberklassennamens in der Konfigurationsdatei können Sie die Warnung beseitigen, dass die Treiberklasse veraltet ist.

Auch wenn der Treibername in mysql5.7.28 in com.mysql.cj.jdbc.Driver geändert wird, wird weiterhin ein Fehler gemeldet. Der Grund dafür ist, dass die Version in der POM-Projektobjektmodelldatei nicht geändert wird in

mysql-connector-java8.0 oder höher

mysql-connector-java und entsprechende MySQL-Versionen

Da meine Version MySQL 5.7.28 ist und Connector-Java Version 5.1 verwendet, tritt der obige Fehler weiterhin auf. Verwenden Sie daher Connector-Java 8.0 oder höher in MySQL 5.6 oder höher.

Und Sie müssen die Zeitzone einstellen, wenn Sie es verwenden

TreiberKlassenname=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://localhost:3306/Datenbankname?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&useSSL=false
Benutzername=root
Passwort=

Die Server-Zeitzone muss hier als Server-Zeitzone = Asien/Shanghai geschrieben werden. Wenn man sie als Server-Zeitzone = Shanghai schreibt, tritt ebenfalls ein Fehler auf. Es scheint, dass die Zeitzone von Shanghai nicht gefunden werden kann. Es kann sein, dass es mehr als ein Shanghai auf der Welt gibt, haha!

mysql-connector-java und entsprechende Java-Version

Angesichts der oben genannten Punkte ist es für Anfänger besser, mysql-connector-java 8.0 oder höher zu verwenden

Oben sind die Details des Mysql-Connector-Java-Treiberversionsproblems aufgeführt. Weitere Informationen zum Mysql-Connector-Java-Treiber finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM!

Das könnte Sie auch interessieren:
  • Detaillierte Erläuterung des Downloadvorgangs des Pakets mysql-connector-java.jar
  • Hinweise zum Upgrade auf mysql-connector-java8.0.27

<<:  CSS zum Implementieren von QQ-Browserfunktionen

>>:  Three.js realisiert den dynamischen 3D-Logoeffekt von Facebook Metaverse

Artikel empfehlen

Wie kann MySQL das Löschen und Weglaufen von Datenbanken wirksam verhindern?

Inhaltsverzeichnis Einstellungen für den abgesich...

Die Einhandregel von WEB 2.0

<br />Mein vorheriger Artikel über CSS wurde...

Codebeispiele für allgemeine Docker-Datenvolumenvorgänge

Wenn der Entwickler Dockerfile zum Erstellen des ...

Einführung in Netzwerktreiber für Linux-Geräte

Kabelgebundenes Netzwerk: Ethernet Drahtloses Net...

9 superpraktische CSS-Tipps, die Designern und Entwicklern helfen

Im Kopf eines Webdesigners muss viel Wissen im Zus...

MySQL-Abfragebaumstrukturmethode

Inhaltsverzeichnis MySQL-Abfragebaumstruktur 1. Ü...

Kennen Sie die Bedeutung von Sonderzeichen in URLs?

1.# # stellt eine Position auf einer Webseite dar...

Detaillierte Erläuterung des Nginx-Forward-Proxys und des Reverse-Proxys

Inhaltsverzeichnis Weiterleitungsproxy Nginx-Reve...

Detaillierte Erklärung langer Transaktionsbeispiele in MySQL

Vorwort: Die Artikelserie „Erste Schritte mit MyS...

So dockerisieren Sie eine Python-Django-Anwendung

Docker ist ein Open-Source-Projekt, das Entwickle...

Miniprogramm zur Implementierung der Token-Generierung und -Verifizierung

Inhaltsverzeichnis Verfahren Demo Mini-Programm B...