最近在做项目碰到的问题,记录一下
SpringMvc 在处理json数据的配置总体分为三个地方
1、引入相关的jar包
2、配置SpringMvc.xml配置文件
3、在方法上进行注解
下面我们一步一步说
第一步、引入相关的jar包,我估计大多数的人问题都可能出现在这里,我开始也是在网上看了好多的文章,按照文章配置之后还是不行,可能是文章写的不全。按照大部分文章是引入
jackson-core-2.9.9.jar 、 jackson-annotations-2.9.9.jar 、jackson-databind-2.9.9.jar
这三个jar包就可以了,我引入后还是不行,就按照报错信息解决,报错大部分也是说相关的类没有找到,就是还是缺相关jar包,所以除了以上三个,我还引入了以下的jar
jackson-core-asl-1.9.9.jar、 jackson-mapper-asl-1.9.9.jar 、hibernate-core-5.1.0.Final.jar 、 hibernate-entitymanager-5.1.0.Final.jar 、 hibernate-validator-5.0.1.Final.jar一共引入了8个jar
第二步、在MVC配置文件中添加解析配置
<mvc:annotation-driven >
<mvc:message-converters register-defaults="true">
<!-- 配置Fastjson支持 -->
<bean class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<value>text/html;charset=UTF-8</value>
<value>application/json</value>
</list>
</property>
<property name="features">
<list>
<value>WriteMapNullValue</value>
<value>QuoteFieldNames</value>
</list>
</property>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>
如果XML文件保存不支持mcv前缀,在xml头中添加下面配置即可
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd"
第三步、在请求的方法上用@ResponseBody 请求的参数用@RequestBody,我这里是用Map的方式接收的,也有其他的方式
记录一下希望对大家有帮助,有不对的地方欢迎指正