
SpringMVC返回json数据有三种方式\x0d\x0a1、第一种方式是spring2时代的产物,也就是每个json视图controller配置一个Jsoniew。如: 或者同样要用jackson的jar包。\x0d\x0a2、第二种使用JSON工具将
对象序列化成json,常用工具Jackson,fastjson,gson。\x0d\x0a利用HttpServletResponse,然后获取response.getOutputStream()或response.getWriter()\x0d\x0a直接输出。\x0d\x0a示例:\x0d\x0a[java] view plain copy print?\x0d\x0apublic class JsonUtil \x0d\x0a{ \x0d\x0aprivate static Gson gson=new Gson() \x0d\x0a /** \x0d\x0a * @MethodName : toJson \x0d\x0a * @Description : 将对象转为JSON串,此方法能够满足大部分需求 \x0d\x0a * @param src \x0d\x0a *:将要被转化的对象 \x0d\x0a * @return :转化后的JSON串 \x0d\x0a */ \x0d\x0apublic static String toJson(Object src) { \x0d\x0aif (src == null) { \x0d\x0areturn gson.toJson(JsonNull.INSTANCE) \x0d\x0a} \x0d\x0areturn gson.toJson(src) \x0d\x0a} \x0d\x0a} \x0d\x0a3、第三种利用spring mvc3的注解@ResponseBody\x0d\x0a例如:\x0d\x0a\x0d\x0a[java] view plain copy print?\x0d\x0a@ResponseBody \x0d\x0a @RequestMapping("/list") \x0d\x0a public List list(ModelMap modelMap) { \x0d\x0aString hql = "select c from Clothing c " \x0d\x0aPage page = new Page() \x0d\x0apage.setPageSize(6) \x0d\x0apage = clothingServiceImpl.queryForPageByHql(page, hql) \x0d\x0a \x0d\x0areturn page.getResult() \x0d\x0a } \x0d\x0a\x0d\x0a然后使用spring mvc的默认配置
就可以返回json了,不过需要jackson的jar包@ResponseBody
@RequestMapping(value = {"/queryByIds"},method=RequestMethod.POST)
public List<UsrUser> queryByIds(Model model){
List<UsrUser>list=new ArrayList();
return list
}
直接返回list,前台dataType用json就可以接收到json数据了,springmvc框架会自动转换
默认是有提供return Json(object) 方法,但是涉及到
序列化,dataSet序列化是会出问题的,最好的写法是要么你自己写序列化JSON,要么你把dataSet编程List<Object>这样的范型去 *** 作JSON
评论列表(0条)