springMVC报java.lang.IllegalArgumentException: No converter found for return value of type异常

问题描述:使用springMVC框架,用@responseBody返回对象的json数据,报出此异常。

部分代码:

@ResponseBody
public Result query(HttpServletRequest request, HttpServletResponse response) {
	return new Result();
}
原因:springMVC默认是没有json对象的转换器的,需要手动添加json转换依赖。

解决方案:

手动添加jackson依赖:

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-core</artifactId>
    <version>${jackson.version}</version>
</dependency>
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>${jackson.version}</version>
</dependency>

在springMVC配置文件中添加以下配置:

<mvc:annotation-driven>
     <mvc:message-converters>
            <bean class="org.springframework.http.converter.StringHttpMessageConverter"/>
            <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"/>
   </mvc:message-converters>
</mvc:annotation-driven>

猜你喜欢

转载自blog.csdn.net/weixin_39383071/article/details/80669237