首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

Eclipse 開發 JSP 中文亂碼的三層解決方案:工作空間編碼、web.xml 過濾器、頁面 pageEncoding

     編輯:程式設計疑難解答

三層配置缺一不可

1. Eclipse 工作空間編碼

Window → Preferences → General → Workspace
Text file encoding → Other → UTF-8

確保源文件保存為 UTF-8。

2. web.xml 字符編碼過濾器

<filter>
    <filter-name>characterEncodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
        <param-name>encoding</param-name>
        <param-value>UTF-8</param-value>
    </init-param>
    <init-param>
        <param-name>forceEncoding</param-name>
        <param-value>true</param-value>
    </init-param>
</filter>
<filter-mapping>
    <filter-name>characterEncodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

Spring 專用過濾器,強制請求/響應編碼為 UTF-8。

3. JSP 頁面聲明

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>

pageEncoding 指定 JSP 文件本身編碼,contentType 指定響應頭 Content-Type。

Tomcat 級配置(補充)

<Connector port="8080" protocol="HTTP/1.1"
           URIEncoding="UTF-8" 
           useBodyEncodingForURI="true" />

在 server.xml 中設置 URI 編碼,解決 GET 參數中文亂碼。

驗證清單

  1. 保存 JSP 文件時 IDE 右下角顯示 UTF-8。
  2. 瀏覽器開發者工具 Network → Response Headers 含 Content-Type: text/html; charset=UTF-8。
  3. 表單提交中文參數,後端 request.getParameter 正確解析。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved