首页 > 编程语言 > 详细

SpringBoot 中的@Controller 和@RestController 注解的区别

时间:2020-03-01 13:03:06      阅读:39      评论:0      收藏:0      [点我收藏+]

今天在使用springboot初始化一个项目的时候,发现controller层的方法无法访问,网页总是404

@Controller
public class HelloController {

    @RequestMapping(path = {"/hello"})
    //@ResponseBody
    public String hello(){
        return "hello world fuzhihang";
    }
}

 

经过检查代码和上网查找发现了一个问题,我所使用的注解是@Controller,

这样一来会默认调用视图解析器去找相应的页面去了,显然我返回的这个页面是不存在的,所以会返回404

将@controller改成@RestController 即可,@RestController相当于将@ResponseBody + @Controller合在一起的作用

在@RequestMapping下面再加个@ResponseBody注解,
@responseBody注解的作用是将controller的方法返回的对象通过适当的转换器转换为指定的格式之后,

写入到response对象的body区,而不是调用视图解析器,通常用来返回JSON数据或者是XML

SpringBoot 中的@Controller 和@RestController 注解的区别

原文:https://www.cnblogs.com/douzihedouyacai/p/12389004.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!