zoukankan      html  css  js  c++  java
  • @Controller和@RestController的区别?

    1.@RestController注解相当于@ResponseBody + @Controller合在一起的作用。
    
    2.如果只是使用@RestController注解Controller,则Controller中的方法无法返回jsp页面,或者html,配置的视图解析器 InternalResourceViewResolver不起作用,返回的内容就是Return 里的内容.

    例如:
    1.使用@Controller 注解,在对应的方法上,视图解析器可以解析return 的jsp,html页面,并且跳转到相应页面
    若返回json等内容到页面,则需要加@ResponseBody注解
     1 @Controller
     2 @RequestMapping("/login")
     3 //@Api(value = "登录接口",tags = "login control")  坑 tags中如果写中文,swagger无法展开
     4 @Api(description = "登录接口")
     5 public class LoginController {
     6 
     7     @Autowired
     8     IUserService iUserService;
     9 
    10     private UsernamePasswordToken token;
    11     /**
    12      * 登录页面
    13      *
    14      * @return
    15      */
    16     @GetMapping("/tologin")
    17     public String tologin() {
    18         return "/page/backstage/blogin.html";
    19     }

    2.@RestController注解,相当于@Controller+@ResponseBody两个注解的结合,返回json数据不需要在方法前面加@ResponseBody注解了,但使用@RestController这个注解,就不能返回jsp,html页面,视图解析器无法解析jsp,html页面

    @RestController
    @RequestMapping("/menu")
    @Api(description = "菜单")
    public class MenuController {
    
        @Autowired
        IMenuService iMenuService;
    
        @GetMapping("/getMenu")
        @ApiOperation("获取菜单")
        public Result getMenu() {
            List<Tree> menu = iMenuService.findMenu();
            return Result.builder().code(200).object(menu).build();
        }

    signature:祸兮福所倚,福兮祸所伏
  • 相关阅读:
    Storm 中drpc调用
    yarn下资源配置
    java 中 Stringbuff append源代码浅析
    总结的MR中连接操作
    hive中使用rcfile
    MapFile
    HDFS副本存放读取
    zoj 1967 Fiber Network/poj 2570
    zoj 2027 Travelling Fee
    poj 1742 Coins
  • 原文地址:https://www.cnblogs.com/xnuuuu/p/12077962.html
Copyright © 2011-2022 走看看