一、相关类中使用的注解

  1. @RestController:REST风格的控制器
  2. @RequestMapping:配置URL和方法之间的映射
  3. @SpringBootApplication:应用程序入口类
  4. @Controller:控制器
  5. @Service:业务处理类
  6. @Repository:数据库访问类
  7. @Configuration:配置类
  8. @Resource:装配bean
  9. @Autowired:注入对象
  10. @Qualifier:用于标注哪一个实现类才是需要注入的
  11. @Transaction:处理事务
  12. @ComponentScan:扫描组件(servlet、过滤器、监听器、bean等)
  13. @WebServlet:注册servlet
  14. @EnableAutoConfiguration:提供自动配置
  15. @EnableScheduling:开启计划任务
  16. @EnableAsync:开启异步
  17. @ControllerAdvice:同意处理异常
  18. @ConfigurationProperties:同类配置信息封装成一个实体类
  19. @Order:排序、序号越小越早执行
  20. @WebFilter:注册过滤器
  21. @WebListener:标注为监听类
  22. @Conditional :按照一定的条件进行判断,满足条件给容器注册bean
  23. @Profile :根据当前环境,动态的激活和切换一系列组件的功能
  24. @Import :导入配置类或者导入一个带有@Component等注解要放入Spring容器中的类
  25. @ImportResource :导入一个传统的xml配置文件
  26. @Bean :可以把第三方包的类对象放入到spring ioc中
  27. @Primary :修改优先权
  28. @PropertySource :加载指定的属性文件(*.properties)到 Spring 的 Environment 中。可以配合 @Value 和 @ConfigurationProperties 使用
  29. @MapperScan:可以指定要扫描的Mapper类的包的路径
  30. @Scrope:描述spring容器如何新建Bean实例 
    1. Singleton:容器共享一个Bean实例,默认为Singleton
    2. Prototype:每次调用新建一个Bean
    3. Request:每一个request新建一个
    4. Session:每一个Session新建一个
    5. GlobalSession:只在portal应用中有用,每一个GlobalSession新建一个Bean

二、相关方法中使用的注解

  1. @RequestBody:将请求体中的字符串绑定到相应的对象上
  2. @PathVariable:获取路径中的参数
  3. @Bean:交给spring管理的对象
  4. @ResponseBody:用来返回json、xml格式的数据
  5. @ExceptionHandler:异常执行方法
  6. @RequestMapping:地址映射
  7. @GetMapping:查询的请求
  8. @PostMapping:新增的请求
  9. @DeleteMapping:删除的请求
  10. @PutMapping:修改的请求
  11. @RequestParam:将请求参数绑定到你控制器的方法参数上
  12. @PostConstruct:修饰一个非静态的void()方法。被@PostConstruct修饰的方法会在服务器加载Servlet的时候运行,并且只会被服务器执行一次。PostConstruct在构造函数之后执行,init()方法之前执行。

三、元注解(定义注解的注解)

  1. @Retention:注解的生命周期
  2. @Target:表明注解可以使用的范围
  3. @Inherited:表明类型是可以被继承的
  4. @Documented:将注解信息添加在java文档中
  5. @Interface:自定义注释类型

 

四、JUnit中的注解

  1. @BeforeClass:一般用来初始化整体代码
  2. @AfterClass:一般用来销毁和释放资源
  3. @Before:一般用来初始化方法
  4. @After:一般用来回滚测试数据
  5. @Test:编写测试用例
  6. @Ignore:测试时忽略
  7. @RunWith:负责调用测试代码
  8. @SpringBootTest:指定测试入口

 

五、MyBatis中的注解

  1. @Select:查询
  2. @Insert:添加
  3. @Update:修改
  4. @Delete:删除
  5. @Mapper:标注类交给spring管理
  6. @Results:结果集多个字段映射关系
  7. @Result:结果集单个字段映射关系
  8. @ResultMap:根据ID关联xml里面的<ResultMap>
  9. @SelectProvider:构建动态查询Sql
  10. @InsertProvider:构建动态添加Sql
  11. @UpdateProvider:构建动态更新Sql
  12. @DeleteProvider:构建动态删除Sql

六、Swagger中的注解

  1. @Api:描述接口用途
  2. @ApiOperation:描述方法用途
  3. @ApiImplicitParam:描述方法参数
  4. @ApiImplicitsParam:描述方法多个参数
  5. @ApiIgnore:忽略

 

七、Spring Cache中的注解

  1. @EnableCAche:开启缓存
  2. @CacheAble:缓存类和方法的返回值
  3. @CachePut:每次都会触发真实方法的调用
  4. @CacheEvict:标注需要清除缓存的方法和类
  5. @Caching:组合多个相关注解标签

八、AOP中的注解

  1. @Before:在切入点开始处切入内容
  2. @After:在切入点结尾处切入内容
  3. @Around:在切入点前后切入内容
  4. @Aspect:标记为切面类
  5. @Component:把切面类加入IoC容器中,让spring进行管理
  6. @AfterReturning:在切入点返回内容之后切入内容
  7. @AfterThrowing:切入内容部分,抛出异常之后的处理逻辑

 

九、Hibernate-validator注解(内置数据验证器)

  1. @NotBlank:非null,长度大于0
  2. @Email:邮箱
  3. @Length(min=,max=):字符串大小范围
  4. @NotEmpty:非空
  5. @NotEmptyPatten:非空情况下,是否匹配正则表达式
  6. @DateValidator:日期格式 是否满足正则表达式
  7. @DateFormatCheckPattern:日期格式 是否满足正则表达式
  8. @CreditCardNumber:信用卡号码
  9. @Range(min=,max=,message=):元素必须在合适范围内
  10. @Null:null
  11. @NotNull:不为null
  12. @AssertTrue:元素必须为true
  13. @AssertFalse:元素必须为false
  14. @Min(value):数字最小值
  15. @Max(value):数字最大值
  16. @DecimalMin(value):数字最小值
  17. @DecimalMax(value):数字最大值
  18. @Size(max=,min=):数字的范围
  19. @Ditits(integer,fraction):范围内数字
  20. @Past:过去的日期

十、Lombok注解

  1. @Data:自动生成Getter、Setter、toString、equals、hashCode方法,以及不带参数的构造方法
  2. @NonNull:帮助处理空指针异常
  3. @CleanUp:自动管理资源
  4. @Setter/@Getter:Getter、Setter方法
  5. @ToString:生成toString方法
  6. @EqualsAndHashcode:重写hashCode和equals方法
  7. @NoArgsConstructor/@RequiredArgsConstructor/@AllArgsConstructor:自动生成构造方法
  8. @Value:标注为final类
  9. @Builder:生成复杂的构造器API类
  10. @SneakyThrows:用于处理异常
  11. @Synchronized:同步方法的转换
  12. @Log:支持各种日志对象

十一、其他

  1. @EnableRedisHttpSession:开启Redis分布式Session支持
  2. @Value:获取配置文件中的值(用在属性上)
  3. Spring EL: spring表达式语言,可以用运算规则来装配Bean
  4. @EnableAsync:开启异步
  5. @Async:方法进行异步操作

Spring boot中相关的注解的更多相关文章

  1. 如何优雅地在 Spring Boot 中使用自定义注解,AOP 切面统一打印出入参日志 | 修订版

    欢迎关注个人微信公众号: 小哈学Java, 文末分享阿里 P8 资深架构师吐血总结的 <Java 核心知识整理&面试.pdf>资源链接!! 个人网站: https://www.ex ...

  2. Spring Boot中使用MyBatis注解配置详解(1)

    之前在Spring Boot中整合MyBatis时,采用了注解的配置方式,相信很多人还是比较喜欢这种优雅的方式的,也收到不少读者朋友的反馈和问题,主要集中于针对各种场景下注解如何使用,下面就对几种常见 ...

  3. Spring Boot 中使用 @Transactional 注解配置事务管理

    事务管理是应用系统开发中必不可少的一部分.Spring 为事务管理提供了丰富的功能支持.Spring 事务管理分为编程式和声明式的两种方式.编程式事务指的是通过编码方式实现事务:声明式事务基于 AOP ...

  4. Spring Boot中使用@Transactional注解配置事务管理

    事务管理是应用系统开发中必不可少的一部分.Spring 为事务管理提供了丰富的功能支持.Spring 事务管理分为编程式和声明式的两种方式.编程式事务指的是通过编码方式实现事务:声明式事务基于 AOP ...

  5. 在Spring Boot中使用 @ConfigurationProperties 注解

    但 Spring Boot 提供了另一种方式 ,能够根据类型校验和管理application中的bean. 这里会介绍如何使用@ConfigurationProperties.继续使用mail做例子. ...

  6. 在Spring Boot中使用 @ConfigurationProperties 注解, @EnableConfigurationProperties

    但 Spring Boot 提供了另一种方式 ,能够根据类型校验和管理application中的bean. 这里会介绍如何使用@ConfigurationProperties.继续使用mail做例子. ...

  7. spring boot中的jave注解学习

    在spring中,不仅框架作者会使用java注解,开发者也常使用. 可以随手给个例子:在org.springframework.boot.autoconfigure.jdbc.DataSourcePr ...

  8. Spring Boot 中使用自定义注解,AOP 切面打印出入参日志及Dubbo链路追踪透传traceId

    一.使用背景 开发排查系统问题用得最多的手段就是查看系统日志,在分布式环境中一般使用 ELK 来统一收集日志,但是在并发大时使用日志定位问题还是比较麻烦,由于大量的其他用户/其他线程的日志也一起输出穿 ...

  9. Spring Boot 中使用 @ConfigurationProperties 注解

    @ConfigurationProperties 主要作用:绑定 application.properties 中的属性 例如: @Configuration public class DataSou ...

随机推荐

  1. MySQL之数据查询语言(DQL)

    数据查询语言DQL基本结构是由SELECT子句,FROM子句,WHERE子句组成的查询块: SELECT <字段> FROM <表名> WHERE <查询条件> - ...

  2. Qt开发笔记:OpenSSL库介绍、windows上mingw32版本的OpenSSL编译模块化

    前言   Windows上mingw32版本的openssl的编译是属于比较棘手的,OpenSSL本身不提供支持..   OpenSSL 介绍   OpenSSL是一个开放源代码的软件库包,应用程序可 ...

  3. GO学习-(11) Go语言基础之map

    Go语言基础之map Go语言中提供的映射关系容器为map,其内部使用散列表(hash)实现. map map是一种无序的基于key-value的数据结构,Go语言中的map是引用类型,必须初始化才能 ...

  4. GO学习-(4) Go语言基础之变量和常量

    Go语言基础之变量和常量 变量和常量是编程中必不可少的部分,也是很好理解的一部分. 标识符与关键字 标识符 在编程语言中标识符就是程序员定义的具有特殊意义的词,比如变量名.常量名.函数名等等. Go语 ...

  5. Docker学习(15) Docker容器的跨主机连接

    Docker容器的跨主机连接 Docker使用网桥跨主机容器连接 Docker使用Open cSwitch实现跨主机容器连接 Docker使用weave实现跨主机容器连接

  6. (最新)VS2015安装以及卸载过程——踩坑实录

    前言 Visual Studio (简称VS)是微软公司旗下最重要的软件集成开发工具产品.是目前最流行的 Windows 平台应用程序开发环境,也是无数人学习编程的入门软件之一.Visual Stud ...

  7. 人体姿态和形状估计的视频推理:CVPR2020论文解析

    人体姿态和形状估计的视频推理:CVPR2020论文解析 VIBE: Video Inference for Human Body Pose and Shape Estimation 论文链接:http ...

  8. OpenCV读写视频文件解析

    OpenCV读写视频文件解析 一.视频读写类 视频处理的是运动图像,而不是静止图像.视频资源可以是一个专用摄像机.网络摄像头.视频文件或图像文件序列. 在 OpenCV 中,VideoCapture ...

  9. SOC,System on-a-Chip技术初步

    SOC,System on-a-Chip技术初步 S O C(拼作S-O-C)是一种集成电路,它包含了电子系统在单个芯片上所需的所有电路和组件.它可以与传统的计算机系统形成对比,后者由许多不同的组件组 ...

  10. 尚硅谷Java——宋红康笔记【day1-day5】

    day1 注释 1.java规范的三种注释方式: 单行注释 多行注释 文档注释(java特有) 2. 单行注释和多行注释的作用: ① 对所写的程序进行解释说明,增强可读性.方便自己,方便别人 ② 调试 ...