Spring boot中常用注解解释
@Data
是Lombok提供的注解,结合了以下几个常用注解的功能:
@Getter: 自动为所有字段生成getter方法。
@Setter: 自动为所有字段生成setter方法。
@ToString: 自动生成toString()方法。
@EqualsAndHashCode: 自动生成equals()和hashCode()方法。
@RequiredArgsConstructor: 自动生成一个包含final字段或@NonNull字段的构造方法。
区别于常规的POJO设置,可以极大地减少样板代码,例如为类中的字段手动编写getter、setter、toString等方法。因为在普通的web框架中,需要手动设置get、set方法,以及toString方法。
@Accessors(chain = true)
是Lombok的一个注解,用于配置生成的getter和setter方法的样式。
chain = true
表示开启链式访问模式,setter方法会返回当前对象,而不是void,从而支持链式调用。
例如,obj.setA(a).setB(b)
。
在需要链式调用setter方法时使用,可以提高代码的简洁性和可读性。
@ApiModel(value = “xxx”, description = “xxx”)
是来自Swagger的注解,用于描述API文档中的模型对象。
value = "xxx"
:指定该模型在API文档中的名称。
description = ""
:可以为该模型对象添加描述信息,便于API用户理解该对象的用途和功能。
在自动生成API文档时使用,如在Spring Boot项目中结合Swagger来为接口生成清晰的文档说明。
@Repository
该注解标识该类是一个DAO(数据访问对象),用于与数据库进行交互。作为Mapper,与xml中方法对应。
它还会将数据库相关的异常转换为Spring的 DataAccessException,从而避免与底层数据库技术绑定的特定异常。
@Service
用于将类标识为业务逻辑层(Service层)的组件。写于service的实现类中。供Spring容器进行自动管理和依赖注入。
负责实现具体的业务逻辑,通常是数据处理和操作的地方。
@Autowired
用于自动注入依赖对象。Spring会根据类型自动查找并注入该依赖。自动注入Spring容器中已声明的Bean到当前类的字段、构造函数或方法中,不需要手动初始化。
@Api(tags = “xxx”)
用于生成API文档的注解,用于给控制器类提供API文档中的信息。
tags 属性用于为控制器提供标签,便于在API文档中进行分组和分类。
@RestController
表示该类是一个控制器(Controller),专门用于处理Web请求,并以REST风格返回数据。它是 @Controller 和 @ResponseBody 的结合,简化了代码。处理HTTP请求并返回JSON、XML或其他格式的数据。
@PostMapping(“/xxx”)
表示该方法专门用于处理HTTP POST请求。将特定路径(如 /login)的POST请求映射到该方法进行处理。
PostMapping 一般用于处理数据提交操作,如表单提交或登录请求。通常用于定义RESTful接口中的POST操作,例如用户登录、数据提交、文件上传等操作。