美文网首页
java注解大全

java注解大全

作者: 呦丶耍脾气 | 来源:发表于2025-08-11 14:04 被阅读0次
编号 注解 所属框架 作用
1 @Component Spring 添加在类上,标记当前类是组件类,可以通过参数配置Spring Bean名称
2 @Controller Spring 添加在类上,标记当前类是控制器组件类,用法同@Component
3 @Service Spring 添加在类上,标记当前类是业务逻辑组件类,用法同@Component
4 @Repository Spring 添加在类上,标记当前类是数据访问组件类,用法同@Component
5 @Configuration Spring 添加在配置类上,用于代替传统的xml配置文件, Spring会在启动时自动加载带有@Configuration注解的类
6 @ComponentScan Spring 添加在配置类上,开启组件扫描。 如果没有配置包名,则扫描当前配置类所在的包, 如果配置了包名,则扫描所配置的包及其子孙包
7 @Value Spring 添加在属性上,或添加在被Spring调用的方法的参数上,用于读取Environment中的属性值,为对象的属性或方法的参数注入值
8 @Autowired Spring 添加在属性上,使得Spring自动装配此属性的值 添加在构造方法上,使得Spring自动调用此构造方法 添加在Setter方法上,使得Spring自动调用此方法
9 @Qualifier Spring 添加在属性上,或添加在方法的参数上, 配合自动装配机制,用于指定需要装配的Spring Bean的名称
10 @Resource Spring 此注解是javax包中的注解, 添加在属性上,使得Spring自动装配此属性的值, 通常不推荐使用此注解
11 @Scope Spring 添加在组件类上,或添加在已经添加了@Bean注解的方法上, 用于指定作用域,注解参数为singleton(默认)时为“单例”,注解参数为prototype时为“非单例”
13 @Aspect Spring 添加在切面类上,属于AOP的注解 用于告诉Spring容器将该类识别为一个切面,它定义了切入点(Pointcut)和通知(Advice), 切入点定义了在应用程序中哪些方法或代码块应该被拦截和执行额外的逻辑, 通知包括前置通知、返回通知、环绕通知、异常通知和最终通知
14 @Before Spring 前置通知,添加在切面类方法上, 在目标方法执行之前执行的通知
15 @After Spring 后置通知,添加在切面类方法上, 在目标方法最终执行之后执行的通知
16 @AfterReturning Spring 返回通知,添加在切面类方法上, 在目标方法正常返回之后执行的通知
17 @AfterThrowing Spring 异常通知,添加在切面类方法上, 在目标方法抛出异常之后执行的通知
18 @Around Spring 环绕通知,添加在切面类方法上, 将目标方法封装起来,在目标方法调用之前和之后执行自定义的行为,通常使用 try ... catch ... finally 包裹
19 @Mapper Mybatis 添加在Mapper接口上,用于标记此接口是Mybatis的Mapper接口
20 @MapperScan Mybatis 添加在配置类上,用于指定Mapper接口的根包,Mybatis将根据此根包执行扫描,以找到各Mapper接口
21 @Select Mybatis 添加在Mapper接口的抽象方法上,可以通过此注解直接配置此抽象方法对应的SQL语句(不必将SQL语句配置在XML文件中),用于配置SELECT类的SQL语句,但是,非常不推荐这种做法
22 @Insert Mybatis 同上,用于配置INSERT类的SQL语句
23 @Update Mybatis 同上,用于配置UPDATE类的SQL语句
24 @Delete Mybatis 同上,用于配置DELETE类的SQL语句
25 @Param MyBatis 添加在接口方法参数前, 用于传递多个参数给SQL语句,在Mapper接口的方法中定义多个参数时,需要使用@Param注解来标识每个参数的名字,这样MyBatis就可以将参数值绑定到SQL语句中对应的参数上
26 @SpringBootApplication Spring Boot 添加在类上,用于标记此类是Spring Boot的启动类,每个Spring Boot项目应该只有1个类添加了此注解
27 @SpringBootTest Spring Boot 添加在类上,用于标记此类是加载Spring环境的测试类
28 @Test Spring Boot 添加在方法上,用于标记此方法是Spring环境的测试方法
29 @RequestMapping Spring MVC 添加在类上,也可以添加在处理请求的方法上, 通常用于配置请求路径
30 @ResponseBody Spring MVC 添加在方法上,标记此方法是“响应正文”的, 添加在类上,标记此类中所有方法都是“响应正文”的
31 @RestController Spring MVC 添加在类上,标记此类是一个“响应正文”的控制器类
32 @GetMapping Spring MVC 添加在方法上,是将请求方式限制为GET的@RequestMapping
33 @PostMapping Spring MVC 添加在方法上,是将请求方式限制为POST的@RequestMapping
34 @DeleteMapping Spring MVC 添加在方法上,是将请求方式限制为DELETE的@RequestMapping
35 @PutMapping Spring MVC 添加在方法上,是将请求方式限制为PUT的@RequestMapping
36 @PathVariable Spring MVC 添加在请求参数上,用于标记此参数的值来自URL中的占位符,如果URL中的占位符名称与方法的参数名称不同,需要配置此注解参数来指定URL中的占位符名称
37 @RequestBody Spring MVC 添加在请求参数上,用于标记此参数必须是对象格式的参数,如果未添加此注解,参数必须是FormData格式的
38 @RequestParam Spring MVC 添加在请求参数上,用于将请求参数值绑定到控制器方法的参数上,同时方便使用 Knife4j 测试
39 @ExceptionHandler Spring MVC 添加在方法上,标记此方法是处理异常的方法,可以通过配置注解参数来指定需要处理的异常类型,如果没有配置注解参数,所处理的异常类型取决于方法的参数列表中的异常类型
40 @ControllerAdvice Spring MVC 添加在类上,标记此类中特定的方法将作用于每次处理请求的过程中
41 @RestControllerAdvice Spring MVC 添加在类上,是@ControllerAdvice和@ResponseBody的组合注解
42 @Data Lombok 添加在类上,将在编译期生成此类中所有属性的Setter、Getter方法,及hashCode()、equals()、toString()方法
43 @Setter Lombok 添加在类上,将在编译期生成此类中所有属性的Setter方法,也可以添加在类的属性上,将在编译期生成此属性的Setter方法
44 @Getter Lombok 添加在类上,将在编译期生成此类中所有属性的Getter方法,也可以添加在类的属性上,将在编译期生成此属性的Getter方法
45 @ToString Lombok 添加在类上,将在编译期生成基于此类中所有属性的toString()方法
46 @NoArgConstructor Lombok 添加在类上,将在编译期生成此类的无参数构造方法
47 @AllArgsConstructor Lombok 添加在类上,将在编译期生成基于此类中所有属性的全参构造方法
48 @Api Knife4j 添加在控制器类上,通过此注解的tags属性配置API文档中的模块名称
49 @ApiOperation Knife4j 添加在控制器类中处理请求的方法上,用于配置业务名称
50 @ApiModelProperty Knife4j 添加在封装的请求参数类型中的属性上,用于配置请求参数的详细说明,包括:名称、数据类型、是否必须等
51 @ApiImplicitParam Knife4j 添加在控制器类中处理请求的方法上,用于配置请求参数的详细说明,包括:名称、数据类型、是否必须等
52 @ApiImplicitParams Knife4j 添加在控制器类中处理请求的方法上,如果需要通过@ApiImplicitParam注解配置的参数超过1个,则必须将多个@ApiImplicitParam注解作为此注解的参数
53 @ApiIgnore Knife4j 添加在请求参数上,用于标记API文档中将不关心此参数
54 @Validated Spring Validation 添加在方法的参数上,标记此参数需要经过Validation框架的检查;添加在类上,并结合方法上的检查注解(例如@NotNull等)实现对未封装的参数的检查
55 @NotNull Spring Validation 添加在需要被检查的参数上,或添加在需要被检查的封装类型的属性上,用于配置“不允许为null”的检查规则
56 @NotEmpty Spring Validation 使用位置同@NotNull,用于配置“不允许为空字符串”的检查规则
57 @NotBlank Spring Validation 使用位置同@NotNull,用于配置“不允许为空白”的检查规则
58 @Pattern Spring Validation 使用位置同@NotNull,用于配置正则表达式的检查规则
59 @Range Spring Validation 使用位置同@NotNull,用于配置“数值必须在某个取值区间”的检查规则

注解大全图解


相关文章

  • java注解大全

    @Test 在测试类之前 (junit)@Service 在实现service类之前 (spring)@Contr...

  • 文章大全

    Java并发文章大全 Java类文章大全 Java工具文章大全 Linux文章大全 SpringCloud文章大全...

  • SpringBoot常用注解大全 Day19 2018-12-0

    SpringBoot常用注解大全 一、注解(annotations)列表 @SpringBootApplicati...

  • 2019-08-28 Spring Boot 常用注解总结

    摘自原文:springboot注解大全 一、注解(annotations)列表 @SpringBootApplic...

  • Spring注解大全

    Spring使用的注解大全和解释 注解解释@Controller组合注解(组合了@Component注解),应用在...

  • 菜鸟学服务端技术----Spirng基础

    注解 Java基础加强总结(一)——注解(Annotation) java中的注解是如何工作的? java 注解 ...

  • SpringBoot学习

    学习站点: 易百教程 注解 [springBoot系列]--springBoot注解大全 SpringBoot@C...

  • 自定义注解

    java annotation基础 java注解分为标准注解和元注解。 标准注解是java为我们提供的预定义的注解...

  • Java注解的使用

    Java注解的使用 参考 廖雪峰java教程 使用注解 什么是注解(Annotation)?注解是放在Java源码...

  • Java原生注解和Spring注解的说明

    注解 java 原生注解 Spring 中的注解 一 Java原生注解 Java注解是在JDK1.5以后引入的新特...

网友评论

      本文标题:java注解大全

      本文链接:https://www.haomeiwen.com/subject/hgpmojtx.html