zoukankan      html  css  js  c++  java
  • 解决springmvc报No converter found for return value of type: class java.util.ArrayList问题

     

    一、背景

      最近闲来无事,想自己搭建一套Spring+SpringMVC+Mybatis+Mysql的环境(搭建步骤会在以后博客中给出),结果运行程序时,适用@ResponseBody注解进行返回List<对象>的json数据时出现了:nested exception is java.lang.IllegalArgumentException: No converter found for return value of type: class java.util.ArrayList错误,就细细分析了下,而后解决了该问题,先拿来备份和分享!

    二、框架搭建环境

      1.jdk 1.7

      2.maven 3.3.9

      3.spring 4.2.6.RELEASE

      4.springmvc 4.2.6.RELEASE

      5.mybatis 3.2.8

    三、错误原因及解决步骤

      1.原因:这是因为springmvc默认是没有对象转换成json的转换器的,需要手动添加jackson依赖。

      2.解决步骤:

        手动添加jackson依赖到pom.xml文件中

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

      如果还是没有解决,则进行以下步骤

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

    这样我们就完美解决了该问题。

    四、总结

      我们在自己搭建框架的过程中,一定要学会自己多思考,遇到问题多去翻翻源码,这样对我们解决问题很有帮助。

  • 相关阅读:
    数据库Mysql给用户赋予操作表的权限
    C# log4net日志分等级打日志
    C# 将字符串转为函数名
    C# winform无法拖动控件
    C# 程序获取管理员方法
    C# 生成程序目录避免生成多余的XML和pdb
    C# 快速获取一个月的天数或最后一天
    正则
    C# 根据服务名打开所在文件夹
    330 div+css Experience
  • 原文地址:https://www.cnblogs.com/zhoujian43/p/6640804.html
Copyright © 2011-2022 走看看