Spring MVC框架五:乱码问题

it2026-01-14  5

出现问题

比如出现以下情况 先建立一个表单 具体的配置,参考前面的内容 利用注解创建MVC项目

<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> </head> <body> <form action="/t/test" method="post"> <input type="text" name="name"> <input type="submit"> </form> </body> </html>

创建一个类

package com.www.controller; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.PostMapping; @Controller public class TestEncoding { @PostMapping("/t/test") public String test(String name, Model model){ model.addAttribute("msg",name); return "test"; } }

测试发现

解决方案

以前乱码问题通过过滤器解决 , 而SpringMVC给我们提供了一个过滤器 , 可以在web.xml中配置

<filter> <filter-name>encoding</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> </filter> <filter-mapping> <filter-name>encoding</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>

配置好后一定要重启Tomcat

结果: 一般情况下,SpringMVC默认的乱码处理就已经能够很好的解决了!乱码问题,需要平时多注意,在尽可能能设置编码的地方,都设置为统一编码 UTF-8!

最新回复(0)