zoukankan      html  css  js  c++  java
  • Controller 层中,到底是 返回界面 还是JSON?(转)

    前提:Controller 层上面的注解是@Controller;如果是@RestController 情况就不同了

    讨论:返回json 数据 还是view视图?
    结论

    • 不使用@ResponseBody 注解在方法上,返回的是String对象,那么展示的内容要到指定界面上。
    • 使用@ResponseBody 注解在方法上,返回的是JSON对象,那么展示的内容便是json字符串。
    • 使用@ResponseBody 注解在方法上,返回的对象是ModelAndView (显示界面),那么展示的内容要到指定界面上。

    代码示例如下:

     
    // 返回界面
    @GetMapping("/index")
    public String index1() {
    return "index";
    }
    
    // 返回json对象
    @ResponseBody
    @GetMapping("/json")
    public String json() {
    return "json";
    }
    
    // 返回界面 或json
    // 如果用到@ResponseBody 还想返回视图,那必须要用 ModelAndView 对象
    @ResponseBody
    @GetMapping("/json")
    public Object view(boolean is) {
    if(is){
    ModelAndView mv=new ModelAndView();
    mv.setViewName("/index");
    return mv;
    }
    return "json";
    }
    

      




  • 相关阅读:
    日志
    设置和开启定时器
    缓存管理
    计算机程序员能做多久,这个行业有年龄限制吗?
    程序员都是怎么工作的?
    做程序员怎么样?
    javascript中this关键字
    1003. 二哥养细菌—java
    1002. 二哥种花生——java
    this与static
  • 原文地址:https://www.cnblogs.com/talkingcat/p/13677829.html
Copyright © 2011-2022 走看看