首页 > 其他分享 >@RestController

@RestController

时间:2024-03-17 11:22:33浏览次数:19  
标签:返回 控制器 RestController 标识 Controller 注解

@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 响应的内容返回给客户端,而不会经过视图解析器进行渲染。

标签:返回,控制器,RestController,标识,Controller,注解
From: https://www.cnblogs.com/zhanshuang/p/18078349

相关文章

  • RestController:Spring Framework 中用于创建 RESTful Web 服务的注解
    RestController 是SpringFramework中用于创建RESTfulWeb服务的注解。它简化了构建RESTfulWeb服务的过程,使得开发者能够更专注于业务逻辑的实现,而不是底层的HTTP请求和响应处理。一、RestController的基本概念RestController 是SpringWeb模块中的一个核心注......
  • 多个@RestControllerAdvice全局异常捕获器的顺序问题
    影响一多个捕获器按照加载顺序执行,可以通过@Order注解控制加载顺序,值越小的越先加载,如@Order(Ordered.HIGHEST_PRECEDENCE)最先执行。同时可以在捕获器中加入静态代码块打印日志判断加载顺序,如:static{log.info("GlobalExceptionHandlerclasshasbeenloaded.");......
  • @RestController和@Controller注解
     @RestController和@Controller是Spring框架中用于定义控制器的两个注解; @RestConteroller注解:@RestController是@Controller的特殊形式,是用于创建RESTfulWeb服务的控制器类,而非传统的Web形式;控制器方法使用@RequstMapping或其他衍生注解来映射url路径,这些数据返回......
  • 【SpringBoot】当AOP引发的异常与@RestControllerAdvice擦肩而过:异常处理的盲点揭秘
    各位上午/下午/晚上好呀!今天在写bug的时候发现一个这样的问题:AOP抛出的异常竟然没有被@RestControllerAdvice注解修饰的异常统一处理类处理。 需求是这样子滴:对某些加了自定义注解的方法进行切面处理,通过条件判断是否有权限执行该方法。伪代码大概长这个样子:@Around(......
  • @RestControllerAdvice定义返回格式
    原文链接:如何优雅的写Controller层代码?一、拦截异常,封装返回值@RestControllerAdvicepublicclassControllerExceptionAdvice{@ExceptionHandler({BindException.class})publicResultVoMethodArgumentNotValidExceptionHandler(BindExceptione){/......
  • springMVC的常见注解,以及注解的作用。@Controller,@RestController,@RequestMapping,@
    目录注:使用注解,必须要开启注解包扫描1.@Controller2.@RequestMapping3.@PathVariable4.@RequestParam5.@RequestHeader6.@CookieValue7.@RequestBody该注解的作用8.@ResponseBody9.@RestController注:使用注解,必须要开启注解包扫描在MVC核心配置中开启注解包扫描<!--  配置包......
  • Spring Boot学习随笔- RestFul API(@RestController、@RequestBody、@PathVariable),使用
    学习视频:【编程不良人】2021年SpringBoot最新最全教程第十六章、RestFulAPI什么是RESTREST全称是ResourceRepresentationalStateTransfer,中文意思是表述性状态转移,它首次出现在2000年RoyFielding的博士论文中,RoyFielding是HTTP规范的主要编写者之一。他在论文中表......
  • Springcloud学习笔记58--SpringBoot拦截全局异常统一处理(RestControllerAdvice注解)
    1. 应用场景如果和前端约定好使用固定的自定义格式返回参数,如下:{"code":200,"msg":"操作成功","data":{"equipment":55,"code":99,"point":2}}但在运行时发现了异常,默认的异常返回格式如下:......
  • @Controller和@RestController的区别
    总体上,@Controller和@RestController都是SpringMVC框架中的注解,用于标识一个类是SpringMVCcontroller处理器,可以接收HTTP请求。但它们在处理请求和返回结果方面存在一些不同。返回类型:@Controller:如果使用@Controller注解,那么类中的方法可以直接通过返回String跳转到jsp、......
  • Spring Boot RestController接口如何输出到终端
    背景公司项目的批处理微服务,一般是在晚上固定时段通过定时任务执行,但为了预防执行失败,我们定义了对应的应急接口,必要时可以通过运维在终端中进行curl操作。然而,部分任务耗时较长,curl命令执行后长时间没有输出,如果不查看日志,无法知道系统当前的状态,因此有必要研究一下如何在curl命......