当前位置: 首页 > article >正文

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操作,例如用户登录、数据提交、文件上传等操作。


http://www.kler.cn/news/315340.html

相关文章:

  • 汽车焊机数据通信:Profinet转Canopen网关的神奇连接
  • 新160个crackme - 062-syllogism-crackme1
  • GlusterFS 分布式文件系统
  • 初识 performance_schema:轻松掌握MySQL性能监控
  • 基于深度学习的因果关系建模
  • [论文笔记]MRRNET
  • 树和二叉树的概念以及结构
  • 关于IT行业
  • 智慧火灾应急救援航拍检测数据集(无人机视角)
  • 【编程底层原理】Java对象头的详细结构、锁机制及其优化技术,以及逃逸分析和JIT技术在性能优化中的作用
  • 无损转换:严选4个视频mkv转mp4格式的方法
  • Python青少年简明教程目录
  • MySQL 数据库备份与恢复详解
  • 1042 Shuffling Machine,1050 String Subtractio
  • uniapp自定义Tabbar教程
  • pg入门18—如何使用pg gis
  • 大型语言模型 (LLM) 劫持攻击不断升级,导致每天损失超过 100,000 美元
  • 绑定变量对于SQL性能的影响
  • Python练习宝典:Day 1 - 选择题 - 基础知识
  • Go搭建TcpSocket服务器
  • 华润电力最新校招社招润择认知能力测评:逻辑推理数字计算语言理解高分攻略
  • K8s容器运行时,移除Dockershim后存在哪些疑惑?
  • 神经网络面试题目
  • 【AI视频】复刻抖音爆款AI数字人作品初体验
  • 什么是机器学习力场
  • 多维时序 | Matlab基于BO-LSSVM贝叶斯优化最小二乘支持向量机数据多变量时间序列预测
  • cesium.js 入门到精通(5-2)
  • CentOS7.9环境上NFS搭建及使用
  • linux-系统备份与恢复-系统恢复
  • 云硬盘EVS详细解析和配置使用方法