解决乱码方法有多种,常用且测试有效的有两种。
一、代码硬写入的@RequestMapping注解法(治标不治本):
如下图,就是在@RequestMapping的基础上,添加关键键值对:produces="application/json; charset=UTF-8",如果只是默认路径值,没有含value键的,记着添加,其他保持不变。这种方法是只针对本路径下的请求响应内容进行转码。多个地方都需要乱码解决的,就用第二种办法。
二、配置文件加mvc:annotation-driven方法(标本兼治):
如下图,添加mvc:annotation-driven,记得register-defaults要写为false,即启动时注册以supportedMediaTypes支持的编码规则添加到HttpMessageConverter组件内,而默认true,即springMVC启动时自动注册HttpMessageConverter,编码规则是ISO-8859-1。