• 技术文章 >web前端 >js教程

    SpringMVC返回json数据的三种方式_javascript技巧

    2016-05-16 15:26:25原创841
    Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC架构,从而在使用Spring进行WEB开发时,可以选择使用Spring的SpringMVC框架或集成其他MVC开发框架,如Struts1,Struts2等。

    1、第一种方式是spring2时代的产物,也就是每个json视图controller配置一个Jsoniew。

    如:

    或者

    同样要用jackson的jar包。

    2、第二种使用JSON工具将对象序列化成json,常用工具Jackson,fastjson,gson。

    利用HttpServletResponse,然后获取response.getOutputStream()或response.getWriter()

    直接输出。

    示例:

    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) { 
          return gson.toJson(JsonNull.INSTANCE); 
        } 
        return gson.toJson(src); 
      } 
    } 

    3、第三种利用spring mvc3的注解@ResponseBody

    例如:

    @ResponseBody 
     @RequestMapping("/list") 
     public List list(ModelMap modelMap) { 
      String hql = "select c from Clothing c "; 
      Page page = new Page(); 
      page.setPageSize(6); 
      page = clothingServiceImpl.queryForPageByHql(page, hql); 
       
      return page.getResult(); 
     }

    然后使用spring mvc的默认配置就可以返回json了,不过需要jackson的jar包哦。

    注意:当springMVC-servlet.xml中使用时,如果是3.1之前已经默认注入AnnotationMethodHandlerAdapter,3.1之后默认注入RequestMappingHandlerAdapter只需加上上面提及的jar包即可!

    如果是手动注入RequestMappingHandlerAdapter 可以这样设置

    配置如下:

     
           
             
               
             
           
         

    添加包

    jackson-mapper-asl-*.jar
    jackson-core-asl-*.jar

    可以看出,使用方式越来越简单,程序员越来越傻,不知道是好事,还是坏事……

    以上内容是小编给大家分享的SpringMVC返回json数据的三种方式,希望大家喜欢。

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    上一篇:jQuery点击改变class并toggle及toggleClass()方法定义用法_jquery 下一篇:JS提交form表单实例分析_javascript技巧
    大前端线上培训班

    相关文章推荐

    • javascript如何获取当前方法名• javascript怎么设置p的值• javascript怎么检测变量是否存在• JavaScript如何获取HTML元素• JavaScript中数组如何遍历

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网