Springmvc返回json

前言

我们知道 springmvc作为一个controller层的框架;为了方便jsp的使用,让我们返回一个ModelAndView,而我们实际上为了在更多地方去使用(web,android,ios),我们实际上更多的是返回一个json串,这样我们在各种平台上都能使用这些数据了;然后稍微去研究了一下找到spring提供了两种可以使用的适配器:
在这里插入图片描述

  • MappingJackson2HttpMessageConverter
  • GsonHttpMessageConverter
MappingJackson2HttpMessageConverter(使用jackson)配置如下
  • 首先是在pom文件引入jackson-core,jackson-databind,jackson-annotations ,具体版本需要根据自己引入的spring的版本来;
  • 接着是在springmvc的配置文件.xml中加中加入以下代码:
    <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter" p:ignoreDefaultModelOnRedirect="true"> <property name="messageConverters"> <list> <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"/> </list> </property> </bean>
  • 接着在controller层我们只需要返回实体对象,就会得到自动转换成json
    在这里插入图片描述
    以下是请求之后的返回json串 在这里插入图片描述
GsonHttpMessageConverter(推荐)

使用这个适配器的话就是使用需要引入gson ,我直接用的最新的2.8.5 ,spring版本是4.3.18.RELEASE,这个没有遇到像第一种那样版本对不上的情况,对我来说就是gson 的使用频率高一些,所以就推荐使用这个吧;;

  • 首先还是引入gson
  • 接下来在dispatcher-servlet.xml(对应springmvc的配置文件)文件中添加
  • <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter" p:ignoreDefaultModelOnRedirect="true"> <property name="messageConverters"> <list> <bean class="org.springframework.http.converter.json.GsonHttpMessageConverter"></bean> </list> </property> </bean>
  • 然后是controller层(与上边一样的):

在这里插入图片描述在这里插入图片描述
出去以上两种方法还有阿里的fastJson,这个虽然spring没有在框架中写适配器支持 ,但fastjson中有自定义适配器来是配置spring 框架:
在这里插入图片描述

后记:gson和fastjson我觉得会比第一种好一些,主要我之前见过这两种 哈哈

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值