Springmvc 中org.springframework.http.converter.json.MappingJackson2HttpMessageConverter依赖jackson包

时间:2023-03-09 01:18:05
Springmvc 中org.springframework.http.converter.json.MappingJackson2HttpMessageConverter依赖jackson包

1,问题详情:Spring使用4.3.5.Release版本后

在SpringMvc配置文件中配置json 解析器后出现报错信息

[org.springframework.web.context.ContextLoader]Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter#0'
... ...
Caused by: org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [org.springframework.http.converter.json.MappingJacksonHttpMessageConverter] for bean with name 'org.springframework.http.converter.json.MappingJacksonHttpMessageConverter#2aa148c0'
... ...
Caused by: java.lang.ClassNotFoundException: org.springframework.http.converter.json.MappingJacksonHttpMessageConverter
... ...

2.原因:

  Spring4.0后jackson依赖包不一样导致

3.解决方案

Spring 4.x.x版本后使用org.springframework.http.converter.json.MappingJackson2HttpMessageConverter所对应的jar

在maven配置jackson依赖包

        <dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.8.5</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.8.5</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.8.5</version>
</dependency>

Spring 3.x.x版本后使用org.springframework.http.converter.json.MappingJacksonHttpMessageConverter

所依赖的jackson包

         <dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.13</version>
</dependency>