Lösung 1 (Wenn viele verstümmelte Parameter vorhanden sind, ist die Effizienz geringer)
Die Standardcodierung des Browsers ist ISO-8859-1 und umgekehrt -end Servlet empfängt die Anforderungsparameter gemäß ISO-8859-1, um einen Binärstrom zu erhalten, und codiert ihn dann mit UTF-8.
Beispielcode:
// 获得请求参数 String queryString = request.getQueryString(); // 按照ISO-8859-1方式解码 byte[] bytes = queryString.getBytes("ISO-8859-1"); // 按照UTF-8编码 String param = new String(bytes,"UTF-8");
Lösung 2 (diese Methode unterstützt nur Get-Request)
Ändern Sie die Serverkonfiguration (Tomcat): In server.xml ist die Standardeinstellung ISO- 8859-1 (nicht gezeigt) können wir UTF-8 hinzufügen
Lösung 3 (diese Methode unterstützt nur Post-Request)
Stellen Sie die Codierung des Anforderungsparameters ein direkt im Servlet – empfohlen
//设置请求参数编码 request.setCharacterEncoding("UTF-8");
Antwort verstümmelter Code – Antwort
// 设置MIME类型 response.setContentType("text/html"); // 设置编码 response.setCharacterEncoding("UTF-8"); //设置编码(简写) response.setContentType("text/html;charset=utf-8");
Weitere Java-Kenntnisse finden Sie in der Spalte Java Basic Tutorial.
Das obige ist der detaillierte Inhalt vonMehrere Möglichkeiten, mit verstümmelten Zeichen in Java umzugehen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!