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:祸兮福所倚,福兮祸所伏
  • 相关阅读:
    Rotation Kinematics
    离职 mark
    PnP 问题方程怎么列?
    DSO windowed optimization 代码 (4)
    Adjoint of SE(3)
    IMU 预积分推导
    DSO windowed optimization 代码 (3)
    DSO windowed optimization 代码 (2)
    OKVIS 代码框架
    DSO windowed optimization 代码 (1)
  • 原文地址:https://www.cnblogs.com/xnuuuu/p/12077962.html
Copyright © 2011-2022 走看看