zoukankan      html  css  js  c++  java
  • 解决java.lang.IllegalArgumentException: 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>

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

    四、总结

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

  • 相关阅读:
    简易的sniffer程序
    ubuntu 13.10 Rhythmbox不能播放mp3 和中文乱码的问题
    5.单行函数,多行函数,字符函数,数字函数,日期函数,数据类型转换,数字和字符串转换,通用函数(case和decode)
    Java设计模式-单例模式
    WordPress的用户系统总结
    STM8S EEPROM 操作
    简化ui文件转换写法
    大型网站架构之应用服务器集群化
    大型网站架构之分布式缓存
    大型网站架构之JAVA中间件
  • 原文地址:https://www.cnblogs.com/hafiz/p/5812873.html
Copyright © 2011-2022 走看看