摘自王俊標編著的《精通Java Web開發(fā)-基于Struts EJB Hibernate JBuilder》一書:1、頁面請求???采用Filter過濾器方式:??????????????????web.xml片段
?????????EncodingFilter.java
2、Web容器編碼??????在Tomcat的的源代碼中的getParameter()方法,用戶調(diào)用request.getParameter()方法時,首先調(diào)用parsetParameters()方法,在這里面將編碼進行轉(zhuǎn)換。如:??????String s_target = new String (s_source.getBytes("iso-8859-1"), "gb2312);3、數(shù)據(jù)庫??????MySQL中文問題的主要原因是:它對數(shù)據(jù)進行編碼時,采用了和底層的操作系統(tǒng)所不同的編碼。通常MySQL在中文Windows平臺上正確的編碼方式是GBK。因此只要將MySQL安裝目錄下的my.ini文件中的default-character-set選項設(shè)為GBK即可。4、響應結(jié)果??????對于Servlet的代碼處理,可以使用:?????????……?????????respsonse.setContentType("text/html;charset=GB2312");?????????……??????對于JSP文件,可以在開頭部分添加如下聲明:?????????……?????????<%@ page contentType="text/html;charset=GB2312" %>?????????……??????對于HTML頁面文件,則在開頭部分添加聲明如下:?????????……?????????<head>????????????<META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=GB2312">?????????</head>?????????……5、XML文件??????在采用"UTF-8"方式編碼的情況下,使用XML文件存儲中文數(shù)據(jù)常常會出現(xiàn)亂碼的問題,建議使用"GB2312":??????<?xml version='1.0' encoding="GB2312"
Powered by: BlogJava Copyright © tanzek