Lösen Sie einfach das Problem von jsp Chinese verstümmelt

Lösen Sie einfach das Problem von jsp Chinese verstümmelt

Anfänger-JSP erstellt eine einfache Antwortseite Der
spezifische Code lautet wie folgt:

<form action="test.jsp">
    username : <input type="text" name="username" />
    <br />
    <input type="submit">
</form>
 Hello <%=request.getParameter("username")%>

Speichern Sie die Datei test.jsp, starten Sie den Tomcat-Zugriff. Das folgende Bild wird angezeigt:

Fügen Sie hier eine Bildbeschreibung ein
Geben Sie das Feld ein: vae Das folgende Bild wird angezeigt:

Fügen Sie hier eine Bildbeschreibung ein
Aber "Benutzername" sieht wirklich unangenehm aus, deshalb habe ich beschlossen, ihn in "Benutzername" zu ändern.

<form action="test.jsp">
    用户名 : <input type="text" name="username" />
    <br />
    <input type="submit">
</form>
 Hello <%=request.getParameter("username")%>

Zu diesem Zeitpunkt trat das Problem auf:
Fügen Sie hier eine Bildbeschreibung ein
Eine Reihe verstümmelter Zeichen erschien dort, wo der "Benutzername" erscheinen sollte:

Der sogenannte verstümmelte Code in der Antwort ist der verstümmelte Code auf der Anzeigeseite, da die Seitendaten vom Server in die Antwort eingegeben und dann an den Browser gesendet werden. Wenn die Daten in der Antwort nicht normal analysiert werden können, tritt das verstümmelte Problem auf.
Warum gibt es kein Problem auf Englisch? Da in iso-8859-1, gb2312, utf-8 und einem der Codierungsformate das englische Codierungsformat dasselbe ist, jedes Zeichen 8 Ziffern belegt und Chinesisch problematisch ist und das nächste Chinesisch 16 Ziffern unter gb2312 belegt Zwei Bytes und unter utf-8 nimmt ein Chinese 24 Bit und drei Bytes auf. Wenn der Browser die Codierungsmethode nicht kennt, schneidet er diese Zeichen von der Mitte ab und sie werden durcheinander gebracht, wenn sie erneut angezeigt werden. Um das verstümmelte Problem zu lösen, müssen wir dem Browser mitteilen, welche Codierungsmethode wir verwenden.

Unter Windows lautet das Standardcodierungsformat der Datei gb2312. Die
Lösung lautet wie folgt:
(1) Fügen Sie der http-Antwort Codierungsinformationen hinzu (Antwort)

<%@ page contentType="text/html; charset=gb2312"%>

Dieser Absatz sollte in die erste Zeile der JSP-Seite eingefügt werden, um den Antworttyp und das Codierungsformat anzugeben. Der Inhaltstyp ist Text / HTML, was HTML-Inhalt bedeutet, und Zeichensatz bedeutet, dass die Codierung gb2312 ist. Auf diese Weise kann der Browser das Codierungsformat aus der Antwort erhalten.

(2) Geben Sie das Codierungsformat in HTML an

<head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title>title</title>
</head>

Der Meta-Teil wird verwendet, um das Codierungsformat des aktuellen HTML-Codes anzugeben. Beachten Sie, dass dieser Absatz im Head-Tag und am oberen Rand des Head-Tags platziert werden sollte. Wenn er nicht oben ist, können Probleme auftreten, z. B. wenn der Titel Chinesisch enthält. unter.

Mit den beiden oben genannten Überprüfungen soll sichergestellt werden, dass die Ausgabe der JSP-Webseite chinesisch ist. Der
geänderte Code lautet wie folgt:

<%@ page contentType="text/html; charset=gb2312"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
        <title>title</title>
    </head>
    <body>
        <form action="test.jsp">
            用户名 : <input type="text" name="username" />
            <br />
            <input type="submit">
        </form>
    </body>
</html>

Führe es nochmals aus:

Fügen Sie hier eine Bildbeschreibung ein

Ich denke du magst

Origin blog.csdn.net/ws15168689087/article/details/109412317
Empfohlen
Rangfolge