Spring boot常用注解和作用

embedded/2024/11/26 18:49:33/

Spring Boot 提供了许多注解来简化开发和配置。以下是一些最常用的 Spring Boot 注解及其作用:

  1. @SpringBootApplication

    • 组合注解,用于启动 Spring 应用的自动配置。它包括 @Configuration@EnableAutoConfiguration@ComponentScan
    • 用法:通常放在主类上。
  2. @EnableAutoConfiguration

    • 告诉 Spring Boot 基于类路径中的 jar 包依赖为当前项目进行自动配置。
    • 用法:放在配置类上。
  3. @ComponentScan

    • 用于指定 Spring 扫描组件的位置。
    • 用法:放在配置类上,可以指定扫描的包路径。
  4. @RestController

    • 组合注解,包括 @Controller@ResponseBody,用于定义 RESTful Web Services。
    • 用法:放在控制器类上。
  5. @RequestMapping

    • 用于定义请求映射,将 HTTP 请求映射到特定的处理方法上。
    • 用法:放在处理请求的方法上。
  6. @GetMapping@PostMapping@PutMapping@DeleteMapping

    • 用于处理特定的 HTTP 方法(GET、POST、PUT、DELETE)的请求映射。
    • 用法:放在处理特定 HTTP 方法请求的方法上。
  7. @Autowired

    • 自动导入依赖的 bean。
    • 用法:放在字段、构造器、设置方法和普通方法上。
  8. @Component

    • 标识一个类为 Spring 管理的组件。
    • 用法:放在类上。
  9. @Service

    • 标识一个类为服务层组件。
    • 用法:放在服务类上。
  10. @Repository

    • 标识一个类为数据访问组件,即 DAO 组件。
    • 用法:放在数据访问类上。
  11. @Controller

    • 标识一个类为 Spring MVC 控制器。
    • 用法:放在控制器类上。
  12. @ResponseBody

    • 表示该方法的返回值作为 HTTP 响应的正文返回,而不是跳转到某个视图。
    • 用法:放在方法上。
  13. @RequestBody

    • 用于读取 Http 请求内容,自动将请求内容转换成指定类型的参数。
    • 用法:放在方法参数上。
  14. @RequestParam

    • 用于读取请求参数。
    • 用法:放在方法参数上。
  15. @PathVariable

    • 用于读取 URL 中的占位符参数。
    • 用法:放在方法参数上。
  16. @Value

    • 注入外部配置到字段中。
    • 用法:放在字段上。
  17. @Qualifier

    • 当有多个同一类型的 bean 时,用于指定具体注入哪一个。
    • 用法:放在 @Autowired 注解旁边。
  18. @Configuration

    • 定义配置类,可替换 xml 配置文件。
    • 用法:放在配置类上。
  19. @Bean

    • 在配置类中声明一个 bean。
    • 用法:放在方法上。
  20. @Profile

    • 指定组件在哪个环境的配置下才能被注册到容器中。
    • 用法:放在类或方法上。
  21. @Lazy

    • 延迟加载 bean,只有在第一次使用该 bean 时才初始化。
    • 用法:放在字段或方法参数上。
  22. @Scope

    • 定义 bean 的作用域。
    • 用法:放在方法上。
  23. @PostConstruct@PreDestroy

    • 分别用于在 bean 创建后和销毁前执行的方法。
    • 用法:放在方法上。

这些注解是 Spring Boot 开发中非常核心和常用的,它们极大地简化了配置和开发过程。


http://www.ppmy.cn/embedded/140692.html

相关文章

记录一个奇怪的前端布局现象

背景 我再根尚硅谷的教程学着写页面时&#xff0c;用padding和margin使li里的文本水平垂直居中我看到下一级的时候发现li添加了一个div后&#xff0c;结果和老师的代码有所出入我就写了个demo 加padding/margin的demo <!DOCTYPE html> <html lang"en">…

Spring Boot 3.0废弃了JavaEE,改用了Jakarta EE

Spring Boot 3.0废弃了JavaEE&#xff0c;改用了Jakarta EE 历史背景 javax变成Jakarta的主要原因是因为Java EE项目从Oracle转移到了Eclipse Foundation&#xff0c;并改名为Jakarta EE。 JavaEE是从Java 1.2版本开始推出的Java企业级开发平台&#xff0c;最初的名称是J2EE(J…

【React】React Router:深入理解前端路由的工作原理

&#x1f308;个人主页: 鑫宝Code &#x1f525;热门专栏: 闲话杂谈&#xff5c; 炫酷HTML | JavaScript基础 ​&#x1f4ab;个人格言: "如无必要&#xff0c;勿增实体" 文章目录 React Router&#xff1a;深入理解前端路由的工作原理路由的演进历程传统多页面…

litepal proguardFiles android studio

Step1&#xff1a;settings.gradle.kts or settings.gradle 添加阿里源 dependencyResolutionManagement {repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)repositories {maven(url "https://jitpack.io")maven (url "https://maven.aliyu…

[工具分享] 根据Excel数据根据Word文档模板,批量创建生成Word文档并重命名,方便快速查找打印

前几天交楼的小姐姐要多份Word文档合同打印给客户&#xff0c;那么100份就需要修改100次 上面好多都是模板的制式文件&#xff0c;里面的部分数据都是要根据实际值来变动的&#xff0c; 那么有没有快速的方法来操作呢&#xff0c;还是只能一个个手动的改&#xff0c;又容易出…

ubuntu 安装 conda

ubuntu 安装 conda ubuntu安装 conda 下载地址&#xff0c;访问清华镜像。 windows下载 exe安装文件&#xff0c; linux下载 sh安装文件 https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/ 执行脚本 sh ./Anaconda3-5.3.1-Linux-x86_64.sh# 如果报错&#xff1a;bunz…

ZYNQ PS 基于 AXI_IIC 的 EEPROM 读写

REVIEW 关于 PS I2C读写EEPROM已经简单的实现过: ZYNQ PS 基于I2C的EEPROM读写-CSDN博客 1. 今日摸鱼任务 使用 AXI IIC 核搭建的 IIC 控制器读取 EDA 拓展板上的EEPROM 芯片。 数据经由 I2C 接口写入和读出 EEPROM芯片&#xff0c;并对比写入和读出的值&#xff0c;将…

CASAIM与新疆大学达成全自动化光学测量技术合作,加速推进智能制造现代产业学院建设

近年来&#xff0c;教育部、工业和信息化部联合发布了《现代产业学院建设指南(试行)》&#xff0c;旨在培养适应和引领现代产业发展的高素质应用型、复合型、创新型人才。这一政策背景为智能制造现代产业学院的建设提供了有力支持。 随着“中国制造2025”战略的深入实施&#…