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文件

相关推荐
先知后行。几秒前
线程的创建.销毁
开发语言·c++·算法
鱼嘻5 分钟前
西嘎嘎学习 - C++ 继承 - Day 10
开发语言·c++·学习·算法
孤廖11 分钟前
从 “模板” 到 “场景”,用 C++ 磨透拓扑排序的实战逻辑
开发语言·c++·程序人生·算法·贪心算法·动态规划·学习方法
我有火的意志20 分钟前
Liunx执行source /etc/profile 报错, -bash: HISTTIMEFORMAT: readonly variable
开发语言·bash·histtimeformat·readonly
Funcy22 分钟前
XxlJob 源码分析04:admin与executor通讯
java
托比-马奎尔26 分钟前
初识SpringBoot
java·spring boot·后端
前行的小黑炭33 分钟前
Android :如何提升代码的扩展性,方便复制到其他项目不会粘合太多逻辑,增强你的实战经验。
android·java·kotlin
-凌凌漆-34 分钟前
【Qt】【C++】虚析构函数及 virtual ~Base() = default
java·c++·qt
蒋星熠38 分钟前
中间件架构设计与实践:构建高性能分布式系统的核心基石
开发语言·数据库·分布式·python·中间件·性能优化·硬件工程
枫叶丹439 分钟前
【Qt开发】显示类控件(二)-> QLCDNumber
开发语言·qt