A. jsp頁面中遇到中文亂碼怎麼處理
查看你的web.xml里的過濾器、頁面的編碼格式是否相同。
B. 如何徹底解決jsp頁面中文亂碼及資料庫亂碼
1、知道自己安裝Mysql資料庫安裝配置時選擇了什麼編碼方式,如果之前安裝,現在不太清楚,建議重新安裝Mysql資料庫,安裝配置時選擇utf8
(這里有個小技巧:不用卸載Mysql數據,找到安裝Mysql資料庫目錄:D:\MySQL Server 5.1\bin下的MySQLInstanceConfig.exe,雙擊運行可以進行重新配置安裝,並選擇utf8編碼方式),如圖
2、安裝成功後,查看編碼方式,sql命令如下:
show variables like 'character%';
這里的所有編碼方式都要統一為utf8,若某一個不是utf8的編碼方式,就要設置為utf8,sql命令如下:set character_set_results=utf8
3、創建資料庫並指定資料庫的編碼方式,sql命令如下:
create database yourDB character set utf8;
4、創建資料庫表,也要指定其編碼方式
5、如果你的Mysql版本是5.0以下,則還需要在hibernate.cfg.xml配置裡面url指定資料庫訪問連接時的編碼方式:
如:url=jdbc:mysql://localhost/db?user=user&password=123456&useUnicode=true&characterEncoding=UTF8
如果Mysql版本是5.0以上,這里的url加不加?user=user&password=123456&useUnicode=true&characterEncoding=UTF8 都沒關系
6、寫一個字元編碼的過濾器,編碼方式也要保證跟mysql的字元集一致為UTF-8
注意:在web.xml配置該過濾器時,必須把該過濾器的<filter-mapping>放在struts的映射前面,不然起不到過慮作用
7、所有jsp頁面指定編碼格式,保證跟mysql的字元集一致為UTF-8
注意:頁面裡面大小寫統一,如<%@ page pageEncoding="UTF-8" contentType="text/html; charset=UTF-8" %>,不能是pageEncoding="UTF-8",contentType="text/html; charset=utf-8",添加數據頁面也要跟顯示數據頁面的編碼格式要保持一致,不然的話就會出現添加到資料庫中沒亂碼,從資料庫中顯示出現亂碼的情況
C. 怎麼解決JSP頁面上的亂碼
剛開始學習jsp的程序員都會遇到這樣一個問題,就是網頁上的中文無法顯示.總結了以下幾條方法。
1、在jsp頁中加入一條語句:
<%@ page contentType="text/html;charset=gb2312" %>中文顯示就正常了。
2、對於從網頁中的文本框通過String parameter = request.getParameter(「parameter」);方式獲得的字元串,均是8859_1的編碼,
如果想把它顯示在網頁上就必須得用parameter = new String(parameter.getBytes(「8859_1」),」gb2312」)進行轉換,windows和linux這兩種系統都是一樣的。
有一個簡單方法,就是在 getParameter() 方法獲取參數之前,使用request.setCharacterEncoding("GB2312");,將提交的信息轉化為 GB2312 編碼。
3、但是對於將數據寫入資料庫的問題,採取的方式就不同了:
windows下,必須要採用該字元串轉換再插入資料庫,而linux下就不需要,而是直接把8859_1編碼的字元插入。
如果從資料庫中讀出的數據,對於windows因為在插入時已經做了轉換,所以讀出時已經是gb2312的,當把它顯示在網頁上時,不需要做編碼轉換,而 linux上的mysql中的數據是8859_1的所以要做編碼的轉換。
4、 如果你給某個字元串變數賦予一個中文字元串的值,那麼在你取出他時,在網頁上的顯示是不需要做字元轉換的,
但是如果你要在linux下做字元的比較,則還需要把字元做parameter = new String(parameter.getBytes(「gb2312」),」8859_1」)的轉換。
5、長江電力網站解決中文問題的方法是:
1)在catalina.sh文件中的相關位置添加下面一行
-Dfile.encoding=GBK \
2)在每個jsp文件的最前面添加下面兩行
<%@ page contentType="text/html; charset=GBK" %>
<%request.setCharacterEncoding("GBK");%>
D. jsp頁面中文亂碼,怎麼解決
因為導致亂碼的原因有很多,要看具體的原因來看,不然在沒有搞清楚原因的情況下胡亂的解決,就有可能導致其他的問題,這樣就得不償失了。
E. 如何解決jsp頁面中文亂碼問題
新建兩個JSP頁面
在c.jsp中新建一個表單
在d.jsp中接收這個值
.運行c.jsp
輸入帶中文的參數,點擊提交
發現接收過來的中文是亂碼,英文正常
解釋下:JSP默認參數在傳輸過程中使用的編碼為ISO-8859-1
而兩個頁面使用的都是UTF-8 的編碼
在d.jsp中新增如下代碼
再次重復上邊的操作,發現中文正常了
把c.jsp中的Post 修改為get方式提交表單
注意URL和中文亂碼,顯然上邊步驟7的方法不行了
修改d.jsp代碼如下
再次運行,一切正常
.步驟11是從代碼上解決亂碼的問題,但是每次get方式都要這么處理,顯得很麻煩。
還有一種就是修改tomcat的server.xml配置文件
參照tomcat幫助文檔中的/docs/config/index.html 文檔的useBodyEncodingForURI 屬性。
為Connector 節點添加useBodyEncodingForURI="true" 屬性即可。
F. jsp在網頁上顯示亂碼怎麼解決
剛開始學習jsp的程序員都會遇到這樣一個問題,就是網頁上的中文無法顯示.總結了以下幾條方法。
1、在jsp頁中加入一條語句:
中文顯示就正常了。
2、對於從網頁中的文本框通過String parameter = request.getParameter(「parameter」);方式獲得的字元串,均是8859_1的編碼,
如果想把它顯示在網頁上就必須得用parameter = new String(parameter.getBytes(「8859_1」),」gb2312」)進行轉換,windows和linux這兩種系統都是一樣
G. jsp中如何去除亂碼
親,你頭部寫著」<meta http-equiv="Content-Type" charset=gb2312">「,然後一個又寫」<%request.setCharacterEncoding("GBK");%>*/「,還有什麼」<%@ page
contentType="text/html; charset=gb2312" %>「,還有」response.setCharacterEncoding("utf-8");「。
有這麼做開發的嗎?你玩瀏覽器呢?
要想保持不亂碼的最基本要求就是要:所有的頁面保持一致的編碼格式,包括後台的配置文件。
你要麼全部保持utf-8,要麼全部是gb2312。
-------------------------------------------------------------------------------------------
其實你只要在你的jsp頁面頂部聲明<%@ page contentType="text/html; charset=utf-8" %>
就夠啦,其他什麼request和response根本不需要處理。
你喜歡的話也可以用「GB2312」或「GBK」,不過這兩個是簡體中文編碼格式,網站一旦運行在繁體中文的系統環境下,馬上就會是亂碼。所以一般統一用「UTF-8」 Union聯盟的國際標准編碼格式。
-------------------------------------------------------------------------------
你要明白,一般java只有在特殊情況下才需要處理編碼格式的。比如資料庫存取、外接介面系統、RFC這些情況的時候才需要。一般是用在資料庫存取的時候才稍微用一下,不過也不需要,資料庫編碼配置好就沒問題。
-----------------------------------------------
你要想想,一個項目幾十個JSP文件、幾十個Servlet文件,上千上萬次的數據接收、響應操作,你這么折騰,程序員不掛掛掉那是奇跡。一般喜歡這個無聊的問題的只有新手!
H. jsp中處理中文亂碼的解決方案有哪些
1.新建兩個JSP頁面
2
2.在c.jsp中新建一個表單
3
3.在d.jsp中接收這個值
4.運行c.jsp
5.輸入帶中文的參數,點擊提交
6.發現接收過來的中文是亂碼,英文正常
解釋下:JSP默認參數在傳輸過程中使用的編碼為ISO-8859-1
而兩個頁面使用的都是UTF-8 的編碼
7.在d.jsp中新增如下代碼
8.再次重復上邊的操作,發現中文正常了
9.把c.jsp中的Post 修改為get方式提交表單
10. 注意URL和中文亂碼,顯然上邊步驟7的方法不行了
11.修改d.jsp代碼如下
12.再次運行,一切正常
13.步驟11是從代碼上解決亂碼的問題,但是每次get方式都要這么處理,顯得很麻煩。
還有一種就是修改tomcat的server.xml配置文件
參照tomcat幫助文檔中的/docs/config/index.html 文檔的useBodyEncodingForURI 屬性。
為Connector 節點添加useBodyEncodingForURI="true" 屬性即可。