SpringBoot常用注解

注解是面试必问的,而且在开发中使用频率也很高。

Spring注解

在类/方法/属性上加注解,可以被Spring框架管理。

@XXController

大多用在Web层的类上,标注当前类为一个控制器

注解 功能 参数 备注
@Controller 标注一个控制器 value

一代目yyds~

@RestController

标注一个RESTful 服务的控制器,相当于@ResponseBody + @Controller,代价是失去了@Controller返回指定页面的功能,仅能返回返回JSON,XML或自定义mediaType内容。因为返回的数据会直接写入 HTTP 响应体中,而不会经过视图解析器进行渲染。

@RequestMapping默认采用@ResponseBody。

value

该注解还提供了自动的数据序列化和反序列化功能。
       
       
       
       
       
       
       
@RequestBody

一般在控制器方法上进行此注解,接收前端传递给后端的请求体中JSON对象的字符串,将其绑定到方法的参数实例的Java Bean。

JSON字符串中的key必须对应Java Bean中的属性名,否则无法接收到相关key的值。

  

required默认为true,会检查请求体中是否有数据

GET请求没有请求体,所以不能使用@RequestBody。POST请求必须要在请求头中声明数据的类型Content-Type。Spring MVC通过使用系统默认配置的HttpMessageConverters解析请求体中的数据,然后把数据绑定到相应的Java Bean上。

对于一个用户请求,只可以使用一个@RequestBody注解,却可以使用多个@RequestParam注解。

RESTful Web 服务

REST(Representational State Transfer)是一种设计风格,用于构建分布式系统中的 Web 服务。

RESTful Web 服务基于 HTTP 协议,使用不同的 HTTP 方法(如 GET、POST、PUT、DELETE)来执行不同的操作,通过 URL 定位资源,并使用 JSON、XML 等格式来传输数据。

其它

@Autowired对标注的变量自动注入

XXMapping

用于匹配路径

注解 功能 参数 备注
@Controller 标注一个控制器 value

一代目yyds~

@RequestMapping

 

value

该注解还提供了自动的数据序列化和反序列化功能。
 @PostMapping      
       
       
       
       
       
       
       

Mybatis注解

@Mapper标注一个Mapper接口,可以被Spring框架管理

其它注解

Swagger

Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。

 @ApiOperation("分类的控制器")

参考文献

org.springframework.web.bind.annotation (Spring Framework 5.2.25.RELEASE API)

 

posted @ 2024-10-27 10:42  老秦鸭  阅读(7)  评论(0)    收藏  举报