json异常

java.lang.IllegalArgumentException: No converter found for return value of type 异常
这个的错误主要的意思就在于json的转换问题。
我看了之前的一些问题报错,一般就在于以下几个方面:

1.pojo的javaBean的getBean取不到。
2.Spring和json的包冲突。
3.json的几个包没有导入

所以这时候就要找到SpringMvc.xml的配置问题了。几经查找,发现就是这的问题。
适配器和映射器我写的代码如下:

<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"> </bean>
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"></bean>

1
2
我不知道我这个东西为啥写了两遍,这个注释掉就没有问题了。

为啥我会有这个错误,是因为我之前在SSM整合的时候,SpringMvc.xml没有报错,所以我才一直在使用。
总结一下,基本上这个错误上面的三种方式都能解决,实在不行debug,或者自己进行测试类,最后就是配置的问题,一定要理解这Spring适配器,映射器,注解驱动,试图解析器的意思。不要擅自更改,不一定这个项目正确,另一个就也正确。

springmvc的配置

<?xml version="1.0" encoding="UTF-8"?>

<!-- 启用spring mvc 注解 -->
<context:annotation-config />

<!-- spring扫描的包 -->
<context:component-scan base-package="com.qst.edu.web.controllor"/>

<!--处理器映射器、适配器的配置-->

<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"/>

<!-- DispatcherServlet不处理静态资源,交给服务器默认的servlet处理 -->
<mvc:default-servlet-handler />



<!-- 该配置版本必须spring4.x 和 jackson2.x以上 -->
<!-- 配置处理适配器 Controller类里面@responseBody方法的返回值都需要经过消息转换器-->
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">
    <property name="messageConverters">
        <list>
            <!-- 处理解决@ResponseBody返回中文乱码情况 -->
            <bean
                    class="org.springframework.http.converter.StringHttpMessageConverter">
                <property name="supportedMediaTypes">
                    <list>
                        <value>text/html;charset=UTF-8</value>
                        <value>text/plain;charset=UTF-8</value>
                        <value>application/json;charset=UTF-8</value>
                    </list>
                </property>
            </bean>
            <!-- 处理解决后台list、map转换json数据问题 -->
            <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter" />
        </list>
    </property>
    <!-- 日期格式转换  自定义类继承 webBindingInitializer接口-->
</bean>
<!-- 启用annotation -->
<mvc:annotation-driven/>



<!-- 视图渲染器 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"
      id="internalResourceViewResolver">
    <!-- 前缀 -->
    <property name="prefix" value="/WEB-INF/views/" />
    <!-- 后缀 -->
    <property name="suffix" value=".jsp" />
</bean>

<bean id="exceptionResolver" class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
    <property name="exceptionMappings">
        <props>
            <prop key="java.lang.Exception">error/error</prop>
            <prop key="com.qst.edu.error.LoginFailException">login</prop>
        </props>
    </property>
</bean>

json版本要和spring相对应4.3x 对应2.7以上

com.fasterxml.jackson.core
jackson-core
2.9.3


com.fasterxml.jackson.core
jackson-annotations
2.9.3


com.fasterxml.jackson.core
jackson-databind
2.9.3

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值