自学内容网 自学内容网

SpringBoot常用的注解

1.@SpringBootApplication

        解释:这是一个SpringBoot应用程序的核心注解,是一个组合注解,包含了@Configuration、@EnableAutoConfiguration和@ComponentScan

        用途:用来标识一个SpringBoot启动类,通常开发者在  在主类上使用该注解,用来启动SpringBoot项目并启用自动配置机制。

2.@RestController

        解释:这是一个@Controller和@ResponseBody的组合注解

        用途:将一个类为RESTful控制器,所有的返回值会自动转换为JSON格式并写入HTTP响应体,常用于构建WebAPI

3.RequestMapping

        解释:用于映射HTTP请求到处理方法

        用途:定义请求的URL路径及其支持的HTTP方法(如GET、POST等),通常用于处理Web请求

4.@GetMapping/@PostMapping/@PutMapping/DeleteMapping

        解释:这些注解是@RequestMapping的简化版,分别用于GET、POST、PUT、DELETE请求

        用途:简化HTTP请求映射,分别处理不同类型的请求,减少代码的冗余

5.@AutoWired

        解释:用于自动注入Spring容器中的Bean

        用途:让Spring自动为一个类的字段、构造方法或方法参数注入所需要的依赖,减少手动操作

6.@Value

        解释:用于将外部配置(如application.yml)中的值注入到类中的字段、构造方法或方法参数

        用途:可以用来注入配置文件中的值,例如数据库连接信息、应用程序的常量等

7.@Component

        解释:将一个类声明为Spring管理的Bean

        用途:使该类成为Spring容器的一部分,Spring会自动实例化并管理其生命周期

8.@Service

        解释:类似于@Component,但用于表示服务层的类

        用途:通常用于表示业务逻辑层的组件

9.@Controller

        解释:将一个类声明成控制器,用途处理Web请求

        用途:与@RestController类似

10.Configuration

        解释:用于一个类为配置类

        用途:代替传统的XML配置文件,使用Java配置类来定义Spring的Bean配置

11.@Bean

        解释:用途在配置类中定义一个Bean

        用途:标记该方法返回的对象为一个Spring管理的Bean,Spring会将其注册到容器中并管理其生命周期

12.@EnableAutoConfiguration

        解释:启用SpringBoot的自动配置功能

        用途:SpringBoot会根据项目的类路径和项目所以依赖的库自动进行配置,减少开发者手动配置的工作量

13.@PathVariable

        解释:用于从URL路径中提取参数

        用途:在RESTful风格的API中,常用来获取路径变量值,如/user/{id}中的id

14.ResponseBody

        解释:表示方法的返回值会直接写入HTTP响应体中。

        用途:用于返回JSON数据或其他格式的数据。

15.@ExceionHandler

        解释:用于捕获并处理 控制器中的异常

        用途:提供统一的异常处理机制,可以在控制器内处理特定的异常并返回相应的错误信息

 Lombok依赖包中:

16.@EqualsAndHashCode

        解释:自动生成equals()和hashCode()方法,通常用于对象比较和哈希集合操作

        通途:用于在比较对象时,自动生成符合Java规范的equals()和hashCode()方法,减少手动编写的重复代码

17.@NoArgsConstructor / @AllArgsConstructor / @RequiredArgsConstructor

        解释:自动生成构造函数。

                @NoArgsConstructor: 生成一个无参构造函数。
                @AllArgsConstructor: 生成一个全参数构造函数。
                @RequiredArgsConstructor: 生成一个包含所有 final 字段和 @NonNull 注解字段的构造函数。

        用途:减少手动编写构造函数的工作

18.@Data

        解释:综合性注解,等同于同时使用 @Getter, @Setter, @ToString, @EqualsAndHashCode, 和 @RequiredArgsConstructor。

        用途:当需要所有这些功能时,可以使用 @Data 注解,简化代码。

19.@Value

        解释: 使类成为不可变类,等同于使用 @Getter, @AllArgsConstructor, @EqualsAndHashCode, @ToString,并且所有字段默认 final。

        用途:用于需要不可变对象的场景(即对象创建后,字段不可修改)。

20.@NonNull

        解释:表示字段、方法参数或方法返回值不能为 null。

        用途: 用于增强代码的安全性,特别是在构造函数、setter 或方法中防止传入 null 值。

----------------------------------------------------------

21.@RestControllerAdvice

        解释:结合了 @ControllerAdvice 和 @ResponseBody 的功能,主要用于处理全局的异常、数据绑定以及应用程序的响应体。并且会将异常信息以 JSON 格式返回

        用途: 允许你在应用中全局处理异常,并将其统一返回为 @ResponseBody 格式,通常用于 RESTful 服务的异常处理。

22.@Validated

        解释: 是 Spring 的一个验证注解,用于启用 Spring 的验证功能,通常与 @Valid 一起使用,用于对传入的请求参数进行验证。

        通途:常用于控制器方法参数、类、字段上,用于执行 Java Bean Validation(JSR-303)规范的验证。它可以对方法参数、DTO(数据传输对象)等进行校验。

23.@SupperssWarnings

        解释:@SuppressWarnings 是 Java 自带的注解,用来抑制编译器的警告信息。

        用途:当你不想让编译器显示某些警告时,可以使用此注解,常见的警告包括未使用的变量、未处理的类型参数、可变参数类型不匹配等

24.@Pattern

        解释:@Pattern 是 Java Bean Validation 规范中的注解,用于对字符串字段进行正则表达式的校验

        用途:通常用于对输入值进行格式验证,确保它符合某个特定的正则表达式,例如验证电子邮件地址、电话号码、身份证号码等。


原文地址:https://blog.csdn.net/2301_81117102/article/details/143883489

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!