Heim >Java >JavaBase >Lösung für eine verstümmelte Java-Post-Anfrage

Lösung für eine verstümmelte Java-Post-Anfrage

尚
Original
2019-11-22 14:37:118299Durchsuche

Lösung für eine verstümmelte Java-Post-Anfrage

In Java-WEB-Projekten sind verstümmelte chinesische Zeichen ein häufig auftretendes und sehr problematisches Problem. Der Link, bei dem verstümmelte Zeichen am wahrscheinlichsten auftreten, ist der Prozess, bei dem der Browser eine Anfrage sendet Server. Im Folgenden wird die Lösung für dieses Problem vorgestellt. Ich hoffe, dass sie allen hilft. Die folgende Transkodierung basiert auf UTF-8. Wenn es sich um andere Kodierungsformate handelt, können Sie sie selbst ändern.

1. Verstümmelter Antwortcode

(1) Legen Sie die serverseitige Codierung fest: Response.setCharacterEncoding("UTF-8");

Diese Einstellung oben Stellen Sie sicher, dass Sie der Methode „response.getWriter()“ vorangehen

(2) Benachrichtigen Sie den Browser über das gesendete Datenformat: Response.setContentType("text/html;charset=UTF-8");

(3) Der Browser verwendet UTF-8 zur Dekodierung.

2. Verstümmelte Zeichen anfordern

1. Nach der Übermittlung der Methode sind die Parameter im Anforderungstext vorhanden. Sie müssen nur Folgendes festlegen:

request.setCharacterEncoding("UTF-8");

2. Mit der Get-Methode senden, werden die Parameter nach der URI-Adresse gespleißt und der Server dekodiert standardmäßig gemäß ISO8859-1. Es gibt zwei Lösungen:

(1). Ändern Sie den Empfang im Programm. Anforderungscodierung (diese Methode erfordert eine Transcodierung für jede Anforderung, nicht empfohlen).

String str = request.getParameter("s");
str = new String(str.getBytes("iso8859-1"),"UTF-8")

(2) Suchen Sie die Datei server.xml im Tomcat-Installationsordner und suchen Sie nach der Datei < ;Connector />-Tag und ändern Sie es (diese Methode funktioniert ein für alle Mal)

<Connector URIEncoding="UTF-8" 
        port="8080"   maxHttpHeaderSize="8192"
        maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
        connectionTimeout="20000" disableUploadTimeout="true" />

Fügen Sie einfach URIEncoding="UTF-8" zu diesem Tag hinzu und starten Sie dann Tomcat neu.

Für weitere Java-Kenntnisse beachten Sie bitte das Java-Grundlagen-Tutorial.

Das obige ist der detaillierte Inhalt vonLösung für eine verstümmelte Java-Post-Anfrage. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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