首页 > 编程语言 > 详细

SpringMVC 中使用 @ResponseBody 返回Json时,需要手动添加jackson依赖

时间:2020-01-07 12:57:05      阅读:82      评论:0      收藏:0      [点我收藏+]

转载 https://www.cnblogs.com/tongxinling/p/7862198.html

No converter found for return value of type: class java.util.HashMap
SpringMVC 中使用 @ResponseBody 返回Json时,需要手动添加jackson依赖!Maven添加:

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-core</artifactId>
    <version>2.4.3</version>
</dependency>
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.4.3</version>
</dependency>

``

不用maven也可以,springMVC-servlet.xml 配置如下

<!-- 启动Springmvc注解驱动 -->
    <mvc:annotation-driven/>
 <!-- 返回json 方法一 需要导入 fastjson.jar包 -->  
    <mvc:annotation-driven>
        <mvc:message-converters register-defaults="false">
            <!-- 避免IE执行AJAX时,返回JSON出现下载文件 -->
            <bean id="fastJsonHttpMessageConverter" class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
                <property name="supportedMediaTypes">
                    <list>
                        <!-- 这里顺序不能反,一定先写text/html,不然ie下出现下载提示 -->
                        <value>text/html;charset=UTF-8</value>
                        <value>application/json;charset=UTF-8</value>
                    </list>
                </property>
            </bean>
        </mvc:message-converters>
    </mvc:annotation-driven>
    
  
  <!-- 返回json 方法二 需要导入 jackson-annotations.jar,jackson-core.jar,jackson-databind.jar-->  
   <!--  <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping" />
    <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">
        <property name="messageConverters">
            <list>
                <bean class="org.springframework.http.converter.StringHttpMessageConverter">
                    <property name="supportedMediaTypes">
                        <list>
                            <value>text/html; charset=UTF-8</value>
                            <value>application/json;charset=UTF-8</value>
                        </list>
                    </property>
                </bean>
                <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
                    <property name="supportedMediaTypes">
                        <list>
                            <value>text/html; charset=UTF-8</value>
                            <value>application/json;charset=UTF-8</value>
                        </list>
                    </property>
                </bean>
            </list>
        </property>
    </bean> -->


controller代码:
@RequestMapping(value="/json")
@ResponseBody
public Object getJson(){
    Map<String, Object> map=new HashMap<String, Object>();
    map.put("fd", "郝鹏");
    return map;
}

可以返回map到前端了,如前端则ajax请求,返回数据如data.fd为郝鹏

 
同时可以参考:https://www.cnblogs.com/gxz-sw/p/6860447.html

SpringMVC 中使用 @ResponseBody 返回Json时,需要手动添加jackson依赖

原文:https://www.cnblogs.com/nb123/p/12160686.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!