SpringMvc JSON 406,吐血。。。。


解决方法一:


1、导入jackson-core-2.5.1.jar和jackson-databind-2.5.1.jar


2、Spring配置文件添加:


1
spring3为:org.springframework.http.converter.json.MappingJacksonHttpMessageConverter 2 spring4为:org.springframework.http.converter.json.MappingJackson2HttpMessageConverter 3 4 5 <bean id="mappingJacksonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"> 6 <property name="supportedMediaTypes"> 7 <list> 8 <value>text/html;charset=UTF-8</value> 9 </list> 10 </property> 11 </bean> 12 13 <!-- 启动Spring MVC的注解功能,完成请求和注解POJO的映射 --> 14 <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"> 15 <property name="messageConverters"> 16 <list> 17 <ref bean="mappingJacksonHttpMessageConverter" /><!-- json转换器 这里可以直接转换成json数据--> 18 </list> 19 </property> 20 </bean>

------------------------------------------------------------------------------

 1 <bean id="stringConverter" class="org.springframework.http.converter.StringHttpMessageConverter">
 2          <property name="supportedMediaTypes">
 3              <list>
 4                  <value>text/html; charset=UTF-8</value>
 5              </list>
 6          </property>
 7      </bean>
 8      <bean id="jsonConverter" class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"></bean>
 9      <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
10          <property name="messageConverters">
11              <list>
12                  <ref bean="stringConverter"/>
13                  <ref bean="jsonConverter"/><!-- 这里出来的object--> 
14              </list>
15          </property>
16      </bean>

 虚线下面和上面的区别在于有没有加StringHttpMessageConverter以及有没有为MappingJacksonHttpMessageConverter加上property 属性,不加property 属性的话,页面不会显示undefined,会显示对象属性的值。

解决方法二:

1、导入第三方(阿里巴巴)的fastjson包,fastjson-1.2.7.jar

2、Spring配置文件添加:

 1 <mvc:annotation-driven>  
 2     <mvc:message-converters register-defaults="true">  
 3         <!-- 避免IE执行AJAX时,返回JSON出现下载文件 -->  
 4         <bean id="fastJsonHttpMessageConverter" class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">  
 5             <property name="supportedMediaTypes">  
 6                 <list>  
 7                     <value>application/json;charset=UTF-8</value>  
 8                 </list>  
 9             </property>  
10         </bean>  
11     </mvc:message-converters>  
12 </mvc:annotation-driven>
原文地址:https://www.cnblogs.com/jiangjianzhu/p/6004394.html