@RestController

@RestController 是 Spring Framework 中的一个注解,主要用于标识一个类是 RESTful 服务的控制器(Controller)。在 Spring MVC 中,通常使用 @Controller 注解来定义控制器类,而 @RestController@Controller 的一个特殊版本,它结合了 @Controller@ResponseBody 注解的功能。

具体来说,@RestController 注解用于标识一个类是 RESTful 服务的控制器,其作用相当于 @Controller + @ResponseBody 的组合。这意味着使用 @RestController 注解标识的类中的方法返回的数据会直接写入 HTTP 响应体中,而不会经过视图解析器进行渲染。

基本上,如果一个 Spring MVC 控制器类主要用于返回 JSON/XML 等数据格式的 RESTful 服务,就应该使用 @RestController 注解来标识这个类,以确保返回的数据直接写入 HTTP 响应体中。

示例代码如下:

javaCopy Code
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloController {

    @GetMapping("/hello")
    public String sayHello() {
        return "Hello, World!";
    }
}

在上面的示例中,HelloController 类使用 @RestController 注解标识,在 sayHello() 方法上使用 @GetMapping 注解来处理 GET 请求,并返回一个字符串。由于类被标记为 @RestController,返回的字符串会直接作为 HTTP 响应的内容返回给客户端,而不会经过视图解析器进行渲染。

posted @   孟昊  阅读(370)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示