Heim > Datenbank > MySQL-Tutorial > Hauptteil

Wie schreibe ich UTF-8-Strings in MySQL mit JDBC ohne Probleme mit der Zeichenkodierung?

Linda Hamilton
Freigeben: 2024-11-03 13:59:02
Original
843 Leute haben es durchsucht

How to Write UTF-8 Strings into MySQL Using JDBC Without Character Encoding Issues?

So schreiben Sie UTF-8-Zeichenfolgen korrekt über die JDBC-Schnittstelle in MySQL

Die MySQL-Konfiguration ist entscheidend für die korrekte Handhabung der UTF-8-Zeichenkodierung. Stellen Sie sicher, dass der MySQL-Server und der MySQL-Client ordnungsgemäß konfiguriert sind, um Zeichenverstümmelung zu vermeiden.

Sicherstellung der korrekten Konfiguration

Um Ihre MySQL-Konfiguration zu überprüfen, führen Sie diese Befehle aus:

show variables like 'character%';
show variables like 'collation%';
Nach dem Login kopieren

Konfigurationsänderungen

Für MySQL-Versionen 5.1.nn und höher (einschließlich 5.5.29):

[mysqld]
character-set-server = utf8
character-set-filesystem = utf8
Nach dem Login kopieren

Für MySQL-Versionen 5.0.nn und älter:

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
default-character-set=utf8
character-set-server=utf8
Nach dem Login kopieren

Verbindung zu MySQL mit Java herstellen

Stellen Sie in Ihrem Java-Code eine Verbindung zu MySQL her, indem Sie den JDBC-Treiber verwenden und die Zeichenkodierung explizit angeben:

<code class="java">con = DriverManager.getConnection("jdbc:mysql://localhost:3306/myDatabase?useUnicode=true&amp;characterEncoding=UTF-8","user","passwd");</code>
Nach dem Login kopieren

Zusätzliche Tipps

  • Verwenden Sie UTF-8-Codierung in Ihrem gesamten Programm, einschließlich Datenbankabfragen, Ergebnismengen und Zeichenfolgenliteralen.
  • Erwägen Sie die Verwendung einer JDBC-Wrapper-Bibliothek, die die Zeichenkodierung automatisch übernimmt, wie z. B. Spring JDBC.
  • Stellen Sie sicher, dass die Datenbanktabellen und -spalten mit dem richtigen Zeichensatz und der richtigen Sortierung erstellt werden.
  • In Ihrem speziellen Fall , das Entfernen der expliziten Zeichensatzeinstellung (query = "setcharacter set utf8";) hat das Problem möglicherweise behoben, da es möglicherweise einen Konflikt verursacht hat.

Das obige ist der detaillierte Inhalt vonWie schreibe ich UTF-8-Strings in MySQL mit JDBC ohne Probleme mit der Zeichenkodierung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage