Tomcat+eclipse+jsp乱码

# [在eclipse中使用Tomcat启动项目乱码](https://www.cnblogs.com/breeze-zZ/p/17614593.html "发布于 2023-08-08 15:49")

修改tomcat的配置文件

1)修改Tomcat的server.xml配置(config目录下)

先找到第一处添加URIEncoding=“UTF-8”

再找到第二处添加URIEncoding=“UTF-8”

2)修改catalina.bat配置(bin目录下)

找到”JAVA_OPTS=%JAVA_OPTS% %JSSE_OPTS%”换行添加

-Dfile.encoding=UTF8 -Dsun.jnu.encoding=UTF8

if not “%JSSE_OPTS%” == “” goto gotJsseOpts
set “JSSE_OPTS=-Djdk.tls.ephemeralDHKeySize=2048”
:gotJsseOpts
set “JAVA_OPTS=%JAVA_OPTS% %JSSE_OPTS%”
-Dfile.encoding=UTF8 -Dsun.jnu.encoding=UTF8

————–以上都不行———-

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
package servlets;



import javax.servlet.*;

import javax.servlet.annotation.WebFilter;

import java.io.IOException;

@WebFilter("/*") // 过滤所有请求

public class CharacterEncodingFilter implements Filter {

@Override

public void init(FilterConfig filterConfig) throws ServletException {}

@Override

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)

throws IOException, ServletException {

// 设置请求和响应编码

request.setCharacterEncoding("UTF-8");

response.setCharacterEncoding("UTF-8");

response.setContentType("text/html; charset=UTF-8");

chain.doFilter(request, response);

}

@Override

public void destroy() {}

}