今天像往常一樣學習 JSP 但是在 送出表單資料的時候問題出現了 我這裡所說的是 JSP擷取表單資料時候的亂碼問題 ,然後我百思不得其解 重複試驗了很多次 依然沒結果 最後百度 了好久終于解決了 這個問題 這個問題是Tomcat下 的JSP開發經常遇到的問題 . 解決方法如下
這是Tomcat為我們提供的解決方案
1、首先 複制 Tomcat安裝目錄下 webapps\examples\WEB-INF\classes\filters\SetCharacterEncodingFilter.class 檔案到我們的項目目錄 WEB-INF下
2、然後 修改 WEB-INF下得 web.xml檔案 在
<web-app>
後面加上如下配置代碼:
<filter>
<filter-name>Set Character Encoding </filter-name>
<filter-class>SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
3、然後關鍵的一步是調用request.setCharacterEncoding("gbk") ;//設定編碼方式 當出現表單送出資料的時候 就會使用我們制定的編碼
我們可能覺得 我在開頭也加上了
<% @ page contentType=”text/html; charset=utf-8” %> 為什麼就不能擷取中文表單資料呢 ?
這個是針對上下問輸出 而不是針對與表單資料的擷取 。。
