1. controller
@RequestMapping(value = “/xxx”, method = RequestMethod.POST,consumes=“application/json”)
若指定consumes为application/json,那么服务器仅处理request Content-Type为“application/json”类型的请求
@Controller
@RequestMapping(value = “/msgId”, method = RequestMethod.POST, consumes=“application/json”)
public void addPet(@RequestBody Msg, Model model) {
// TODO
}
如下是,指定响应类型为application/json的数据
@Controller @RequestMapping(value = “/user/{userId}”, method = RequestMethod.GET, produces=“application/json”) @ResponseBody public User getUser(@PathVariable String UserId, Model model) { // implementation omitted }
参考:https://blog.csdn.net/hong2511/article/details/80866249
2. tomcat/conf/servers.xml配置修改
<Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
3. 代码中的webapp/lib/web.xml添加
<!-- 解决POST提交中文乱码问题的过滤器,注意只能解决POST提交中文乱码的问题 -->
<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>
``