我是通过@ResponseBody注解的方式实现json格式传到页面的方法。首先查看源代码如下图,springmvc的默认编码是“ISO-8859-1”;
而我们通常编码都是使用UTF-8,
所以我们需要在springmvc的注解配置中处理json格式的时候应该修改一下默认的编码格式。
springmvc配置文件中代码如下:
<mvc:annotation-driven> <mvc:message-converters register-defaults="true"> <bean class="org.springframework.http.converter.StringHttpMessageConverter"> <property name="supportedMediaTypes"> <list> <value>text/html;charset=UTF-8</value> <value>application/json;charset=UTF-8</value> </list> </property> </bean> </mvc:message-converters></mvc:annotation-driven>我们在使用基础的Servlet解决的时候是给HttpServletResponse类对象的追加一个application/json;charset=UTF-8。在这里只配置一个application/json;charset=UTF-8是不行的。必须同时配置 <value>text/html;charset=UTF-8</value> <value>application/json;charset=UTF-8</value>至于解释,大佬这样说的:SpringMVC 是按照message-converters 里面配置的处理数据格式的,配置了2个消息转换器 Jackson 和 字符串,这2个消息转换器都是Spring自带的。
原文地址:https://www.cnblogs.com/zou-zou/p/9345485.html
时间: 2024-11-10 00:25:15