SpringMVC返回json数据的三种⽅式
Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow⾥⾯。Spring 框架提供了构建 Web 应⽤程序的全功能 MVC 模块。使⽤ Spring 可插⼊的 MVC架构,从⽽在使⽤Spring进⾏WEB开发时,可以选择使⽤Spring的SpringMVC框架或集成其他MVC开发框架,如Struts1,Struts2等。
1、第⼀种⽅式是spring2时代的产物,也就是每个json视图controller配置⼀个Jsoniew。
如:<bean id="defaultJsonView" class="org.springframework.web.servlet.view.json.MappingJacksonJsonView"/>
或者<bean id="defaultJsonView" class="org.springframework.web.servlet.view.json.MappingJackson2JsonView"/>
同样要⽤jackson的jar包。
2、第⼆种使⽤JSON⼯具将对象序列化成json,常⽤⼯具Jackson,fastjson,gson。
利⽤HttpServletResponse,然后获取OutputStream()或Writer()
直接输出。
⽰例:
public class JsonUtil
{
private static Gson gson=new Gson();
/**
* @MethodName : toJson
* @Description : 将对象转为JSON串,此⽅法能够满⾜⼤部分需求
* @param src
*      :将要被转化的对象
* @return :转化后的JSON串
*/
public static String toJson(Object src) {
if (src == null) {
Json(JsonNull.INSTANCE);
}
Json(src);
}
}
3、第三种利⽤spring mvc3的注解@ResponseBody
例如:
@ResponseBody
@RequestMapping("/list")
springmvc面试题常用注解
public List<String> list(ModelMap modelMap) {
String hql = "select c from Clothing c ";
Page<Clothing> page = new Page<Clothing>();
page.setPageSize(6);
page = clothingServiceImpl.queryForPageByHql(page, hql);
Result();
}
然后使⽤spring mvc的默认配置就可以返回json了,不过需要jackson的jar包哦。
注意:当l中使⽤<mvc:annotation-driven />时,如果是3.1之前已经默认注⼊AnnotationMethodHandlerAdapter,3.1之后默认注⼊RequestMappingHandlerAdapter只需加上上⾯提及的jar包即可!
如果是⼿动注⼊RequestMappingHandlerAdapter 可以这样设置
配置如下:
<bean class="org.springframework.web.hod.annotation.RequestMappingHandlerAdapter"
p:ignoreDefaultModelOnRedirect="true" >
<property name="messageConverters">
<list>
<bean class="org.verter.json.MappingJacksonHttpMessageConverter"/>
</list>
</property>
</bean>
添加包
jackson-mapper-asl-*.jar
jackson-core-asl-*.jar
可以看出,使⽤⽅式越来越简单,程序员越来越傻,不知道是好事,还是坏事……以上内容是⼩编给⼤家分享的SpringMVC返回json数据的三种⽅式,希望⼤家喜欢。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。