1、在jsp页面进行表单输入时,回显数据时出现中文乱码问题
如下图:
相关代码截图 控制器类
用于回显的数据jsp页面
解决方案:在web.xml中添加编码过滤器,过滤中文字符。
代码语言:javascript复制<!-- 配置编码方式过滤器,注意一点:要配置在所有过滤器的前面(最好写在display-name之前) -->
<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>
</filter>
<filter-mapping>
<filter-name>CharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
2、处理器类的方法返回值含有中文的解决方案
代码语言:javascript复制控制器类的方法上使用 @RequestMapping(value="/hello",produces=“text/html;charset=utf-8”) 即可解决返回值瓷器输出到jsp页面上为中文乱码的问题
@Controller //该注解表将当前类交给spring容器管理
@Scope("prototype")
@RequestMapping("/springmvc") //该注解起到限定范围的作用
public class MyController{
//接收json字符串并封装成对象
@RequestMapping(value="/hello",produces="text/html;charset=utf-8")
@ResponseBody//将处理器方法的返回值放到响应体中,在返回给页面
public String hello1(){
return "china:瓷器";
}
}