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

相关推荐
gadiaola15 分钟前
【JVM】Java虚拟机(二)——垃圾回收
java·jvm
крон2 小时前
【Auto.js例程】华为备忘录导出到其他手机
开发语言·javascript·智能手机
zh_xuan3 小时前
c++ 单例模式
开发语言·c++·单例模式
coderSong25683 小时前
Java高级 |【实验八】springboot 使用Websocket
java·spring boot·后端·websocket
老胖闲聊3 小时前
Python Copilot【代码辅助工具】 简介
开发语言·python·copilot
Blossom.1183 小时前
使用Python和Scikit-Learn实现机器学习模型调优
开发语言·人工智能·python·深度学习·目标检测·机器学习·scikit-learn
Mr_Air_Boy4 小时前
SpringBoot使用dynamic配置多数据源时使用@Transactional事务在非primary的数据源上遇到的问题
java·spring boot·后端
曹勖之4 小时前
基于ROS2,撰写python脚本,根据给定的舵-桨动力学模型实现动力学更新
开发语言·python·机器人·ros2
豆沙沙包?4 小时前
2025年- H77-Lc185--45.跳跃游戏II(贪心)--Java版
java·开发语言·游戏
军训猫猫头5 小时前
96.如何使用C#实现串口发送? C#例子
开发语言·c#