关于No converter found for return value of type: class java.util.ArrayList出现的几个问题

时间:2024-03-21 07:23:57

当我使用spring,springmvc,mybatis整合开发项目的时候,在controller层的方法使用@responsebody想要返回一个list集合对象的转换为json格式在页面输出。

出现了异常:No converter found for return value of type: class java.util.ArrayList,

关于No converter found for return value of type: class java.util.ArrayList出现的几个问题

是说明没有可以转换对象成json的转换器,一般考虑导包和配置文件是否有问题:

1.导入依赖

 <properties>
    <jackson.version>2.5.4</jackson.version>
  </properties> 

  <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>

2.springmvc开启注解驱动

<mvc:annotation-driven/>

主要是通过这个帖子了解到,找到问题http://www.cnblogs.com/hafiz/p/5812873.html

然后我发现我添加了依赖,有注解驱动,也还是同样的问题,这个时候我发现我自己的问题所在

在springmvc配置文件中,我通过对注解驱动一个一个往前移发现

关于No converter found for return value of type: class java.util.ArrayList出现的几个问题

我手动配置了适配器和映射器,因为要配置json转换器,所以我开启注解驱动放在后面的时候,就会出异常,可能是跟手动配置出现了某种冲突而忽略了注解驱动,需要放在前面

关于No converter found for return value of type: class java.util.ArrayList出现的几个问题

这样就能正常转换:

关于No converter found for return value of type: class java.util.ArrayList出现的几个问题

通过查找资料我发现开启注解驱动就相当于配置了上面适配器和映射器,所有我直接删除了手动配置,只通过开启注解驱动

当手动配置的时候,json转换器也需要手动配置,如果开启注解驱动也会自动配置json以及其他,个人比较喜欢

资料是通过这个帖子我了解到相关https://blog.csdn.net/u014010769/article/details/47354757