Spring注解大全
觉醒任务 2025-12-07 16:16:19
Spring 注解大全(按版本分类)
以下是 Spring 框架中常用注解的表格汇总,包含注解说明和支持版本信息:
核心注解
注解
说明
支持版本
@Component
标识一个类为 Spring 组件
Spring 2.5+
@Repository
标识数据访问组件
Spring 2.0+
@Service
标识服务层组件
Spring 2.0+
@Controller
标识控制器组件
Spring 2.5+
@RestController
@Controller + @ResponseBody
Spring 4.0+
@Configuration
标识配置类
Spring 3.0+
@Bean
声明一个方法的返回值为 Bean
Spring 3.0+
@Autowired
自动装配依赖
Spring 2.5+
@Qualifier
指定注入的 Bean 名称
Spring 2.5+
@Primary
优先注入的 Bean
Spring 3.0+
@Value
注入属性值
Spring 3.0+
@PropertySource
加载属性文件
Spring 3.1+
@Profile
指定组件在特定环境下激活
Spring 3.1+
@Scope
定义 Bean 的作用域
Spring 2.5+
@Lazy
延迟初始化 Bean
Spring 3.0+
@DependsOn
定义 Bean 初始化依赖
Spring 3.0+
Web MVC 注解
注解
说明
支持版本
@RequestMapping
映射请求路径
Spring 2.5+
@GetMapping
GET 请求映射
Spring 4.3+
@PostMapping
POST 请求映射
Spring 4.3+
@PutMapping
PUT 请求映射
Spring 4.3+
@DeleteMapping
DELETE 请求映射
Spring 4.3+
@PatchMapping
PATCH 请求映射
Spring 4.3+
@RequestParam
获取请求参数
Spring 2.5+
@PathVariable
获取路径变量
Spring 3.0+
@RequestBody
获取请求体内容
Spring 3.0+
@ResponseBody
返回内容直接写入响应体
Spring 3.0+
@ModelAttribute
绑定参数到模型对象
Spring 2.5+
@SessionAttribute
访问会话属性
Spring 3.1+
@CookieValue
获取 Cookie 值
Spring 3.0+
@RequestHeader
获取请求头值
Spring 3.0+
@CrossOrigin
跨域支持
Spring 4.2+
@ExceptionHandler
异常处理方法
Spring 3.0+
@ControllerAdvice
全局控制器增强
Spring 3.2+
@ResponseStatus
定义响应状态码
Spring 3.0+
事务注解
注解
说明
支持版本
@Transactional
声明事务
Spring 2.0+
@EnableTransactionManagement
启用事务管理
Spring 3.1+
数据访问注解
注解
说明
支持版本
@Entity
JPA 实体类
JPA 1.0+
@Table
指定实体对应的表
JPA 1.0+
@Id
标识主键
JPA 1.0+
@GeneratedValue
主键生成策略
JPA 1.0+
@Column
指定字段映射
JPA 1.0+
@OneToOne
一对一关系
JPA 1.0+
@OneToMany
一对多关系
JPA 1.0+
@ManyToOne
多对一关系
JPA 1.0+
@ManyToMany
多对多关系
JPA 1.0+
@JoinColumn
指定关联列
JPA 1.0+
@Query
自定义查询语句
Spring Data 1.0+
@Modifying
标识修改操作
Spring Data 1.0+
@EnableJpaRepositories
启用 JPA 仓库
Spring Data 1.0+
Spring Boot 特有注解
注解
说明
支持版本
@SpringBootApplication
主启动类注解
Spring Boot 1.2+
@EnableAutoConfiguration
启用自动配置
Spring Boot 1.0+
@ComponentScan
组件扫描
Spring 3.1+
@ConditionalOnClass
类路径存在时生效
Spring Boot 1.0+
@ConditionalOnMissingBean
Bean 不存在时生效
Spring Boot 1.0+
@ConditionalOnProperty
属性条件判断
Spring Boot 1.0+
@ConfigurationProperties
绑定配置属性
Spring Boot 1.0+
@EnableConfigurationProperties
启用配置属性绑定
Spring Boot 1.0+
@EnableAsync
启用异步方法
Spring 3.0+
@Async
标识异步方法
Spring 3.0+
@EnableScheduling
启用定时任务
Spring 3.0+
@Scheduled
定时任务方法
Spring 3.0+
@EnableCaching
启用缓存
Spring 3.1+
@Cacheable
缓存方法结果
Spring 3.1+
@CacheEvict
清除缓存
Spring 3.1+
@CachePut
更新缓存
Spring 3.1+
测试注解
注解
说明
支持版本
@SpringBootTest
Spring Boot 测试
Spring Boot 1.4+
@DataJpaTest
JPA 测试
Spring Boot 1.4+
@WebMvcTest
MVC 控制器测试
Spring Boot 1.4+
@MockBean
模拟 Bean
Spring Boot 1.4+
@Test
JUnit 测试方法
JUnit 4+
@BeforeEach
每个测试方法前执行
JUnit 5+
@AfterEach
每个测试方法后执行
JUnit 5+
@BeforeAll
所有测试方法前执行
JUnit 5+
@AfterAll
所有测试方法后执行
JUnit 5+
安全注解 (Spring Security)
注解
说明
支持版本
@EnableWebSecurity
启用 Web 安全
Spring Security 3.2+
@PreAuthorize
方法执行前权限检查
Spring Security 3.0+
@PostAuthorize
方法执行后权限检查
Spring Security 3.0+
@Secured
方法权限检查
Spring Security 2.0+
@RolesAllowed
JSR-250 角色检查
Spring Security 2.0+
@EnableGlobalMethodSecurity
启用方法级安全
Spring Security 3.0+
注意:版本信息表示该注解从指定版本开始支持,后续版本通常都继续支持。部分注解在不同版本中可能有功能增强。
本文章首发在 LearnKu.com 网站上。