Die Lösung für den verstümmelten Code, der auf der Seite an Tomcat übermittelt wurde, besteht darin, ihn in tomcat/conf/server.xml zu konfigurieren (empfohlen: Java-Video-Tutorial)
Nehmen Sie Tomcat6.0.32 als Beispiel. Sie müssen den folgenden Code ändern:
Xml-Code
<Connectorport="8080"protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443"/> <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
in:
Xml-Code
<Connectorport="8080"protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443"URIEncoding="UTF-8"/> <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" />
Wenn das Tomcat-Frontend über Apache- oder Nginx-Weiterleitung verfügt, müssen Sie auch Folgendes ändern:
Xml-Code
<Connectorport="8009"protocol="AJP/1.3"redirectPort="8443"/> <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
in:
Xml-Code
<Connectorport="8009"protocol="AJP/1.3"redirectPort="8443"URIEncoding="UTF-8"/> <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" URIEncoding="UTF-8" />
Chinesischer URL-verstümmelter Code Hier ist eine Lösung, die in jeder Anwendungsbereitstellungsumgebung verwendet werden kann. Diese Methode ist in zwei Schritte unterteilt:
1. Verwenden Sie die Escape-Methode (encodeURIComponent(fieldValue)) zum Codieren auf dem Client, zum Beispiel:
title=escape(encodeURIComponent(title)); //这是js里的函数 url="<%=request.getContextPath()%>/print/printList!printTable.action?title="+title;
2 .decode auf dem Server (getRequest().getParameter("title"),"UTF-8"), dekodieren.
Um Chinesisch in diesen beiden URL-Adressen zu übertragen, müssen Sie sie verschlüsseln und dann entschlüsseln.
编码:encodeURI(encodeURI("包含中文的串")) 解码:java.net.URLDecoder.decode("需要解码的串","utf-8");
JSP-Seiten mit verstümmelten Zeichen müssen normalerweise nur die Zeichensatzkodierung mit dem folgenden Code am Anfang der Seite angeben. Wenn es immer noch nicht funktioniert, verwenden Sie bitte den folgenden Satz zum Konvertieren
str=new String(str.getBytes("ISO-8859-1"),"页面编码方式");
Die von JAVA bei der Netzwerkübertragung verwendete Kodierung ist „ISO-8859-1“, daher muss sie bei der Ausgabe konvertiert werden, z als:
String str=new String(str.getBytes("开发环境编码"),"ISO-8859-1");
Chinesisch nach der Netzwerkcodierung. Um auf der Seite korrekt angezeigt zu werden, muss es ähnlich sein wie
Stirng str=new String(str.getBytes("ISO-8859-1"),"开发环境编码");
Für weitere Java-Kenntnisse beachten Sie bitte das Java-Grundlagen-Tutorial Spalte.
Das obige ist der detaillierte Inhalt vonLösung für verstümmelte Java-Seiten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!