SpringMVC+jsp中文乱码问题解决

SpringMVC+jsp中文乱码问题解决

1、首先要添加中文过滤器

复制代码
<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>

org.springframework.web.filter.CharacterEncodingFilter 这个字符编码过滤器通常应该位于 org.springframework.web.servlet.DispatcherServlet 的前面,确保在请求进入控制器之前对字符编码进行正确的设置

2、设置响应格式

@GetMapping(value = "/getTable", produces = "text/html; charset=UTF-8")

produces 属性是 @GetMapping 注解的一个选项属性,用于指定处理方法可以生产的媒体类型(即响应的内容类型)。

3、如果用的jsp则需要设置page的contentType

复制代码
 <%@ page contentType="text/html; charset=UTF-8" %>

其他前端页面也有各自的,需要注意

4、如果还不行可以自设置tomcat

修改conf目录下的server.xml

复制代码
<Connector port="8080" protocol="HTTP/1.1"
           connectionTimeout="20000"
           redirectPort="8443"
           URIEncoding="UTF-8" />

上面的示例中,URIEncoding属性被设置为UTF-8,这会影响URL中的字符编码处理。谨慎修改server.xml文件

相关推荐
Flittly9 小时前
【AgentScope Java新手村系列】(16)从RAG到多路检索
java·spring boot·spring
小兔崽子去哪了9 小时前
Java 生成二维码解决方案
java·后端
人活一口气14 小时前
从JVM调优到MCP协议:Java全栈技术体系深度总结与企业级架构实践
java·spring boot
NE_STOP16 小时前
Vibe Coding -- 完整项目案例实操
java
荣码16 小时前
GraphRAG:普通RAG只能回答"点"的问题,我踩了4个坑才搞懂
java·python
SimonKing16 小时前
Google第三方授权登录
java·后端·程序员
明月光81816 小时前
从一行 @Builder 说起:重新拾起 Java 的 Lombok、注解与 Builder 模式
java
考虑考虑1 天前
Mybatis实现批量插入
java·后端·mybatis
咖啡八杯1 天前
GoF设计模式——中介者模式
java·后端·spring·设计模式
青石路1 天前
记一次多JDK版本问题的排查,一坑套一坑,差点没爬上来
java