Das Projekt interagiert mit dem Server, greift über Post auf die serverseitige JSP zu, und die JSP greift auf die serverseitige MySQL-Datenbank zu. Schließlich ist der an den Client zurückgegebene chinesische Text verstümmelt. Während des gesamten Vorgangs kann es drei Gründe für den Fehler geben: Die Post-Kodierung ist nicht festgelegt oder die Kodierung ist inkonsistent, es liegt ein Problem mit JDBC vor und es liegt ein Problem mit der anfänglichen Kodierung von MySQL unter Linux vor. Nach langwieriger Fehlersuche wurde schließlich festgestellt, dass es sich um ein MySQL-Kodierungsproblem handelte. Nachfolgend wird beschrieben, wie Sie das Problem der chinesischen Verstümmelung von MySQL unter Linux lösen können. Rufen Sie zuerst den MySQL-Befehlszeilenmodus auf und geben Sie zum Aufrufen mysql -uroot -p ein. Geben Sie dann Wenn der Anzeigeinhalt diesem ähnelt: +--------------------------+----------------------------------------------+ | Variablenname | Wert | +--------------------------+----------------------------------------------+ | Zeichensatzclient | utf8 | | Zeichensatzverbindung | utf8 | | Zeichensatzdatenbank | utf8 | | Zeichensatz_Dateisystem | Binär | | Zeichensatzergebnisse | utf8 | | Zeichensatzserver | utf8 | | Zeichensatzsystem | utf8 | | Zeichensatzverzeichnis | /alidata/server/mysql-5.1.73/share/charsets/ | Die Änderung war korrekt und die Standard-Anfangseinstellung von MySQL ist latin1 statt utf8. Eine Lösung besteht darin, die Eigenschaften der Tabelle auf UTF-8 zu ändern oder beim Erstellen der Tabelle am Ende Die grundlegendste Lösung besteht darin, die MySQL-Konfigurationsdatei zu öffnen und zu ändern. Die MySQL-Konfigurationsdatei unter Linux heißt my.cnf und das Verzeichnis ist /etc/my.cnf. Führen Sie nach dem Öffnen die folgenden Schritte aus: --Fügen Sie drei Zeilen unter dem Tag [mysqld] hinzu: default-character-set = utf8 Zeichensatzserver = utf8 lower_case_table_names = 1 //Bei Tabellennamen wird nicht zwischen Groß- und Kleinschreibung unterschieden (das hat nichts mit der Kodierung zu tun) --Fügen Sie unter dem Tag [mysql] eine Zeile hinzu: default-character-set = utf8 --Fügen Sie unter dem Tag [mysql.server] eine Zeile default-character-set = utf8 hinzu --Fügen Sie unter dem Tag [mysqld_safe] eine Zeile default-character-set = utf8 hinzu --Fügen Sie unter dem Tag [client] eine Zeile default-character-set = utf8 hinzu Es macht nichts, wenn Sie nicht alle der oben genannten Tags finden können. Öffnen Sie die MySQL-Befehlszeile erneut und führen Sie
Führen Sie nach der Ausführung den obigen Show-Befehl erneut aus, um das Zielergebnis zu erhalten. Nachdem die Einstellungen abgeschlossen sind, müssen Sie MySQL neu starten und den Neustartbefehl /etc/init.d/mysqld verwenden. Die ursprüngliche Datentabelle muss gelöscht und neu erstellt werden. Endlich fertig, erledigt. Zusammenfassung 1. Ändern Sie die Datei /etc/my.cnf und fügen Sie die folgenden Zeilen hinzu: [Kunde] # Rohr= # socket=MYSQL Port = 3306 Standardzeichensatz = utf8 [mysql] kein Piepton # Standardzeichensatz= Standardzeichensatz = utf8 #SERVER-ABSCHNITT # ---------------------------------------------------------------------- # Die folgenden Optionen werden vom MySQL-Server gelesen. Stellen Sie sicher, dass # Sie haben den Server richtig installiert (siehe oben), so dass er dies liest # Datei. # server_type=3 [mysqld] Zeichensatzserver = utf8 2. Starten Sie den MySQL-Dienst neu: Dienst MySQL stoppen; Dienst-MySQL-Status; Dienst MySQL starten; Oder starten Sie den MySQL-Dienst neu. Zusammenfassen Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Wenn Sie mehr darüber erfahren möchten, schauen Sie sich bitte die folgenden Links an Das könnte Sie auch interessieren:
|
<<: Eine kurze Analyse zum Festlegen des Anfangswerts des Linux-Roots
>>: Vue implementiert eine einfache Produktion von Zählern
In diesem Artikelbeispiel wird der spezifische Ja...
Originallink: https://vien.tech/article/157 Vorwo...
Beim Erstellen eines SPA müssen Sie häufig bestim...
Ich habe schon einmal einen solchen Artikel gesch...
1. Stellen Sie sicher, dass die Netzwerkverbindun...
Dieser Artikel beschreibt anhand eines Beispiels ...
Als absoluter Neuling habe ich gerade angefangen,...
Der Befehl „Explain“ ist die primäre Möglichkeit,...
Hintergrund: Position: Sticky wird auch Sticky-Po...
Dieser Artikel beschreibt anhand eines Beispiels,...
Inhaltsverzeichnis Vorwort Was sind erstellbare S...
Nach der Installation von Docker gibt es normaler...
Was ist ein Ansichtsfenster? Mobile Browser platzi...
JDK-Downloadadresse: http://www.oracle.com/techne...
Inhaltsverzeichnis 1. MySQL-Datensicherung 1.1. m...