zoukankan      html  css  js  c++  java
  • Spring boot中相关的注解

    一、相关类中使用的注解

    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:方法进行异步操作
  • 相关阅读:
    Class类
    HTML表单格式化
    HTML表单组件
    html常用标签
    Html概述
    Myeclipse2016安装Aptana
    长元音
    对比法记音标
    Java基础八--构造函数
    WPS2012交叉引用技巧,word比wps这点强更新參考文献
  • 原文地址:https://www.cnblogs.com/kerwincui/p/12363409.html
Copyright © 2011-2022 走看看