国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

jsp中文亂碼問題的簡單解決方法

瀏覽:573日期:2022-06-07 17:27:12

簡單解決jsp中文亂碼問題

初學jsp制作一個簡單的響應頁面

具體代碼如下:

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

保存為test.jsp文件,啟動tomcat訪問,出現下圖:

在框內輸入:vae 出現下圖:

可是"username"看起來實在不舒服,決定將它改成"用戶名"

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

這時問題出現:

本該出現"用戶名"的地方出現了一串亂碼:

所謂響應中的亂碼,就是顯示頁面上的亂碼,因為頁面數據是從服務器一端放入響應(response)中,然后發送給瀏覽器,如果響應中的數據無法被正常解析,就會出現亂碼問題。

為什么英文就沒有問題呢?因為在iso-8859-1,gb2312, utf-8以及任意一種編碼格式下,英文編碼格式都是一樣的,每個字符占8位,而中文就麻煩了,在gb2312下一個中文占16位,兩字節,而在utf-8下一個中文要占24位,三字節。

瀏覽器在不知道確定編碼方式的情況下,就會把這些字符從中間截斷,再顯示的時候就亂掉了。

所以,想要解決亂碼問題,就是要告訴瀏覽器我們到底使用了什么樣的編碼方式。

而windows下,文件默認的編碼格式是gb2312

解決方法如下:

(1)在http的響應(response)中添加編碼信息

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

這段要放在jsp頁面的第一行,用來指定響應的類型和編碼格式,contentType為text/html就是html內容,charset表示編碼為gb2312。這樣瀏覽器就可以從響應中獲得編碼格式了。

(2)在html中指定編碼格式

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

meta部分用來指定當前html的編碼格式,注意這一段要放在head標簽中,并且放到head標簽的最前面,如果不是最前面ie下可能會出現問題,尤其是在title中有中文的情況下。

上述兩段檢驗是為了保證jsp網頁輸出的是中文
改后代碼如下:

<%@ 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>

再次運行:

以上就是jsp中文亂碼問題的簡單解決方法的詳細內容,更多關于解決jsp中文亂碼的資料請關注其它相關文章!

標簽: JSP
主站蜘蛛池模板: 嫩江县| 株洲市| 墨竹工卡县| 伊金霍洛旗| 砀山县| 湄潭县| 瑞昌市| 和林格尔县| 黑河市| 湄潭县| 江达县| 新余市| 昂仁县| 南汇区| 永春县| 湾仔区| 修水县| 蓬莱市| 合川市| 海口市| 永福县| 永登县| 广宗县| 交口县| 大英县| 定远县| 重庆市| 安龙县| 峨眉山市| 宜丰县| 台东市| 攀枝花市| 浪卡子县| 台江县| 阿拉善左旗| 关岭| 镇安县| 建水县| 鹤峰县| 海林市| 绥江县|