Sie müssen den JDBC-Treiber anweisen, die UTF-8-Codierung zu verwenden, während die Zeichen, die die SQL-Abfrage darstellen, in Bytes decodiert werden. Sie können dies tun, indem Sie useUnicode=yes
hinzufügen und characterEncoding=UTF-8
Abfrageparameter zur JDBC-Verbindungs-URL.
jdbc:mysql://localhost:3306/db_name?useUnicode=yes&characterEncoding=UTF-8
Andernfalls wird der Standardzeichensatz der Betriebssystemplattform verwendet. Der MySQL-JDBC-Treiber selbst ist sich der Codierung bewusst, die sowohl auf der Clientseite (wo der JDBC-Code ausgeführt wird) als auch auf der Serverseite (wo sich die DB-Tabelle befindet) verwendet wird. Jedes Zeichen, das nicht durch den von der DB-Tabelle verwendeten Zeichensatz abgedeckt ist, wird durch ein Fragezeichen ersetzt.