问题描述
初步搭建起springmvc时候使用@responseBody注解控制springMvc返回json格式数据的时候会发现服务端执行没异常,但是在浏览器端显示406的错误,这个错误是因为服务端给浏览器返回数据的时候没有被浏览器正确的解析。
解决思路
一般是控制response对象的header属性可以解决。springMVC可以使用annotation-driven标签来解决这个问题,就是配置<mvc:annotation-driven>,记得在配置这个之前要引入mvcxsd的命名空间,不然spring无法正确的解析这个标签,步骤如下。
1、首先在application.xml的beans 标签中引入
xmlns:mvc="http://www.springframework.org/schema/mvc"
2、然后在xsi:schemaLocation属性中添加
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd
3、最后配置这个注解,我这边使用的事fastJson的解析器(记得引入这个jar包)。
<mvc:annotation-driven>
<mvc:message-converters register-defaults="true">
<!-- 避免IE执行AJAX时,返回JSON出现下载文件 -->
<bean id="fastJsonHttpMessageConverter" class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<value>application/json;charset=UTF-8</value>
</list>
</property>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>
配置完上面的内容后就不会出现那个406的错误了,望能帮助到大家!
分享到:
相关推荐
springMVC返回json数据需要的两个架包,加入springMVC使用@ResponseBody才不会报错。
字符串、对象、List集合、Map集合
本资源是SpringMVC返回JSON数据的相关Jar包,结合我的博客教程可以完成与EasyUI DataGrid之间的数据交互。
NULL 博文链接:https://bijian1013.iteye.com/blog/2306223
springmvc返回json数据的jar包
附件是springmvc开发中与前台进行json数据的交互所需的jar包,参考文章:http://blog.csdn.net/eson_15/article/details/51742864
springmvc返回json用到的jar包
springmvc返回json的全局异常统一处理demo,有问题可以留言。
jackson-databind-2.4.2.jar jackson-core-2.4.2.jar jackson-annotations-2.4.0.jar
Spring MVC返回JSON数据 用到的jar包,主要是jackson-all-1.9.0.jar,jackson-all-1.9.9.jar,jackson-all-1.9.11.jar三个包
springmvc加入json
springmvc对json支持
NULL 博文链接:https://mryangjw.iteye.com/blog/1772422
springmvc-demo08-返回JSON数据.zip
SpringMVC 开发json接口Demo(含数据库、jar包)。包含:1、SpringMVC 开发json接口.docx;2、springmvc_project.rar;3、students_manage.sql
学习SpringMVC处理JSON数据的具体实现和基本原理,同时会使用HttpMessageConverter
SpringMVC加入json数据读取和写回需要引入的json的jar包--jackson jar
SpringMVC的json依赖jar包
springmvc-json-lib.rar springmvc-json-lib.rar
springmvc中json转换的jar,包含jackson-core-asl.jar和Jackson-mapper-asl.jar