Spring boot中相关的注解
一、相关类中使用的注解
- @RestController:REST风格的控制器
- @RequestMapping:配置URL和方法之间的映射
- @SpringBootApplication:应用程序入口类
- @Controller:控制器
- @Service:业务处理类
- @Repository:数据库访问类
- @Configuration:配置类
- @Resource:装配bean
- @Autowired:注入对象
- @Qualifier:用于标注哪一个实现类才是需要注入的
- @Transaction:处理事务
- @ComponentScan:扫描组件(servlet、过滤器、监听器、bean等)
- @WebServlet:注册servlet
- @EnableAutoConfiguration:提供自动配置
- @EnableScheduling:开启计划任务
- @EnableAsync:开启异步
- @ControllerAdvice:同意处理异常
- @ConfigurationProperties:同类配置信息封装成一个实体类
- @Order:排序、序号越小越早执行
- @WebFilter:注册过滤器
- @WebListener:标注为监听类
- @Conditional :按照一定的条件进行判断,满足条件给容器注册bean
- @Profile :根据当前环境,动态的激活和切换一系列组件的功能
- @Import :导入配置类或者导入一个带有@Component等注解要放入Spring容器中的类
- @ImportResource :导入一个传统的xml配置文件
- @Bean :可以把第三方包的类对象放入到spring ioc中
- @Primary :修改优先权
- @PropertySource :加载指定的属性文件(*.properties)到 Spring 的 Environment 中。可以配合 @Value 和 @ConfigurationProperties 使用
- @MapperScan:可以指定要扫描的Mapper类的包的路径
- @Scrope:描述spring容器如何新建Bean实例
- Singleton:容器共享一个Bean实例,默认为Singleton
- Prototype:每次调用新建一个Bean
- Request:每一个request新建一个
- Session:每一个Session新建一个
- GlobalSession:只在portal应用中有用,每一个GlobalSession新建一个Bean
二、相关方法中使用的注解
- @RequestBody:将请求体中的字符串绑定到相应的对象上
- @PathVariable:获取路径中的参数
- @Bean:交给spring管理的对象
- @ResponseBody:用来返回json、xml格式的数据
- @ExceptionHandler:异常执行方法
- @RequestMapping:地址映射
- @GetMapping:查询的请求
- @PostMapping:新增的请求
- @DeleteMapping:删除的请求
- @PutMapping:修改的请求
- @RequestParam:将请求参数绑定到你控制器的方法参数上
- @PostConstruct:修饰一个非静态的void()方法。被@PostConstruct修饰的方法会在服务器加载Servlet的时候运行,并且只会被服务器执行一次。PostConstruct在构造函数之后执行,init()方法之前执行。
三、元注解(定义注解的注解)
- @Retention:注解的生命周期
- @Target:表明注解可以使用的范围
- @Inherited:表明类型是可以被继承的
- @Documented:将注解信息添加在java文档中
- @Interface:自定义注释类型
四、JUnit中的注解
- @BeforeClass:一般用来初始化整体代码
- @AfterClass:一般用来销毁和释放资源
- @Before:一般用来初始化方法
- @After:一般用来回滚测试数据
- @Test:编写测试用例
- @Ignore:测试时忽略
- @RunWith:负责调用测试代码
- @SpringBootTest:指定测试入口
五、MyBatis中的注解
- @Select:查询
- @Insert:添加
- @Update:修改
- @Delete:删除
- @Mapper:标注类交给spring管理
- @Results:结果集多个字段映射关系
- @Result:结果集单个字段映射关系
- @ResultMap:根据ID关联xml里面的<ResultMap>
- @SelectProvider:构建动态查询Sql
- @InsertProvider:构建动态添加Sql
- @UpdateProvider:构建动态更新Sql
- @DeleteProvider:构建动态删除Sql
六、Swagger中的注解
- @Api:描述接口用途
- @ApiOperation:描述方法用途
- @ApiImplicitParam:描述方法参数
- @ApiImplicitsParam:描述方法多个参数
- @ApiIgnore:忽略
七、Spring Cache中的注解
- @EnableCAche:开启缓存
- @CacheAble:缓存类和方法的返回值
- @CachePut:每次都会触发真实方法的调用
- @CacheEvict:标注需要清除缓存的方法和类
- @Caching:组合多个相关注解标签
八、AOP中的注解
- @Before:在切入点开始处切入内容
- @After:在切入点结尾处切入内容
- @Around:在切入点前后切入内容
- @Aspect:标记为切面类
- @Component:把切面类加入IoC容器中,让spring进行管理
- @AfterReturning:在切入点返回内容之后切入内容
- @AfterThrowing:切入内容部分,抛出异常之后的处理逻辑
九、Hibernate-validator注解(内置数据验证器)
- @NotBlank:非null,长度大于0
- @Email:邮箱
- @Length(min=,max=):字符串大小范围
- @NotEmpty:非空
- @NotEmptyPatten:非空情况下,是否匹配正则表达式
- @DateValidator:日期格式 是否满足正则表达式
- @DateFormatCheckPattern:日期格式 是否满足正则表达式
- @CreditCardNumber:信用卡号码
- @Range(min=,max=,message=):元素必须在合适范围内
- @Null:null
- @NotNull:不为null
- @AssertTrue:元素必须为true
- @AssertFalse:元素必须为false
- @Min(value):数字最小值
- @Max(value):数字最大值
- @DecimalMin(value):数字最小值
- @DecimalMax(value):数字最大值
- @Size(max=,min=):数字的范围
- @Ditits(integer,fraction):范围内数字
- @Past:过去的日期
十、Lombok注解
- @Data:自动生成Getter、Setter、toString、equals、hashCode方法,以及不带参数的构造方法
- @NonNull:帮助处理空指针异常
- @CleanUp:自动管理资源
- @Setter/@Getter:Getter、Setter方法
- @ToString:生成toString方法
- @EqualsAndHashcode:重写hashCode和equals方法
- @NoArgsConstructor/@RequiredArgsConstructor/@AllArgsConstructor:自动生成构造方法
- @Value:标注为final类
- @Builder:生成复杂的构造器API类
- @SneakyThrows:用于处理异常
- @Synchronized:同步方法的转换
- @Log:支持各种日志对象
十一、其他
- @EnableRedisHttpSession:开启Redis分布式Session支持
- @Value:获取配置文件中的值(用在属性上)
- Spring EL: spring表达式语言,可以用运算规则来装配Bean
- @EnableAsync:开启异步
- @Async:方法进行异步操作
Spring boot中相关的注解的更多相关文章
- 如何优雅地在 Spring Boot 中使用自定义注解,AOP 切面统一打印出入参日志 | 修订版
欢迎关注个人微信公众号: 小哈学Java, 文末分享阿里 P8 资深架构师吐血总结的 <Java 核心知识整理&面试.pdf>资源链接!! 个人网站: https://www.ex ...
- Spring Boot中使用MyBatis注解配置详解(1)
之前在Spring Boot中整合MyBatis时,采用了注解的配置方式,相信很多人还是比较喜欢这种优雅的方式的,也收到不少读者朋友的反馈和问题,主要集中于针对各种场景下注解如何使用,下面就对几种常见 ...
- Spring Boot 中使用 @Transactional 注解配置事务管理
事务管理是应用系统开发中必不可少的一部分.Spring 为事务管理提供了丰富的功能支持.Spring 事务管理分为编程式和声明式的两种方式.编程式事务指的是通过编码方式实现事务:声明式事务基于 AOP ...
- Spring Boot中使用@Transactional注解配置事务管理
事务管理是应用系统开发中必不可少的一部分.Spring 为事务管理提供了丰富的功能支持.Spring 事务管理分为编程式和声明式的两种方式.编程式事务指的是通过编码方式实现事务:声明式事务基于 AOP ...
- 在Spring Boot中使用 @ConfigurationProperties 注解
但 Spring Boot 提供了另一种方式 ,能够根据类型校验和管理application中的bean. 这里会介绍如何使用@ConfigurationProperties.继续使用mail做例子. ...
- 在Spring Boot中使用 @ConfigurationProperties 注解, @EnableConfigurationProperties
但 Spring Boot 提供了另一种方式 ,能够根据类型校验和管理application中的bean. 这里会介绍如何使用@ConfigurationProperties.继续使用mail做例子. ...
- spring boot中的jave注解学习
在spring中,不仅框架作者会使用java注解,开发者也常使用. 可以随手给个例子:在org.springframework.boot.autoconfigure.jdbc.DataSourcePr ...
- Spring Boot 中使用自定义注解,AOP 切面打印出入参日志及Dubbo链路追踪透传traceId
一.使用背景 开发排查系统问题用得最多的手段就是查看系统日志,在分布式环境中一般使用 ELK 来统一收集日志,但是在并发大时使用日志定位问题还是比较麻烦,由于大量的其他用户/其他线程的日志也一起输出穿 ...
- Spring Boot 中使用 @ConfigurationProperties 注解
@ConfigurationProperties 主要作用:绑定 application.properties 中的属性 例如: @Configuration public class DataSou ...
随机推荐
- HUAWEI防火墙通过L2TP隧道让外出员工访问公司内网的各种资源
组网图形 组网需求 企业网络如图所示,企业希望公司外的移动办公用户能够通过L2TP VPN隧道访问公司内网的各种资源. 操作步骤 配置LNS. 1.配置接口IP地址,并将接口加入安全区域. <L ...
- [leetcode] (周赛)869. 重新排序得到 2 的幂
869. 重新排序得到 2 的幂 枚举排列,然后验证.比较暴力. 其实好一点的做法应该反过来,先把int范围下的2的N幂算出来,然后一个一个验证给出的数能不能拼成. class Solution { ...
- 无人驾驶汽车发展需要激光雷达和V2X技术
无人驾驶汽车发展需要激光雷达和V2X技术
- Camera Calibration 相机标定
Camera Calibration 相机标定 一.相机标定方法 在opencv中提供了一组函数用于实现相机的标定,标定返回的值包括:相机内参矩阵(fx fy xc yc).相机外参矩阵(R t)以及 ...
- CUDA C++编程接口:编译
CUDA C++编程接口:编译 一.概述 CUDA C++为熟悉C++编程语言的用户提供了一个简单的路径,以方便地编写程序以执行该设备. 它由一组最小的扩展到C++语言和运行库. 在编程模型中引入了核 ...
- 什么是OpenMAX技术分析OpenMAX
什么是OpenMAX技术分析OpenMAX OpenMAX是统一的抽象层,它允许访问否则需要供应商特定API的硬件. Broadcom的MMAL(多媒体抽象层API). 因此,OpenMAX允许使用此 ...
- python 数据写入json文件时中文显示Unicode编码问题
一.问题描述 import json dir = { '春晓':'asfffa', '春眠不觉晓' : '处处闻啼鸟', '夜来风雨声' : 56789, 'asdga':'asdasda' } fp ...
- InnoDB 静态数据加密的常见问题合集
1. 数据是否为有权查看数据的用户解密? 是的.InnoDB静态数据加密旨在透明地在数据库中应用加密,而不会影响现有应用程序.以加密格式返回数据会破坏大多数现有应用程序. InnoDB静态数据加密提供 ...
- Servlet--核心内容汇总
Servlet汇总 因为看公司代码,有个cookie+jwt.Token登录验证接口,于是回顾下servlet.cookie.session.前后端分离restful.jwt.token相关内容.虽然 ...
- Vim一直学不会?试试这个 "真香" 神器
Vim 的使用,一直以来是一个难题 以至于国外的知名程序员问答社区 StackOverFlow 上有一个问题 How to I exit the Vim editor 获得了超过 200万次的浏览量 ...