Spring的常用注解
1.核心容器注解:
1.1 组件扫描
@Component:通用组件注解,标记类为 Spring 管理的 Bean。
@Repository:用于 DAO 层(数据访问层),提供数据访问异常转换。
@Mapper:这个不是Spring的注解,但是是Mybatis和Spring集成时用于标记Mapper接口的注解,当使用Mybatis和Spring集成简化DAO层时,Mapper接口替代了DAO层。
@Service:用于 Service 层(业务逻辑层)。
@Controller:用于 MVC 控制器层。
1.2 依赖注入
@Autowired:自动按类型注入依赖(需配合 @Component 等注解使用)。
@Qualifier:当存在多个同类型 Bean 时,通过名称指定注入的 Bean。
@Resource:JSR-250 标准注解,优先按名称注入(Java 原生注解)。
@Value:注入外部配置文件(如 application.properties)中的值。
2. 请求路径和参数捕捉
@RestController:组合注解,等价于 @Controller + @ResponseBody,返回 JSON/XML 数据。
@RequestMapping:映射 HTTP 请求路径,可指定方法(GET、POST 等)。
@GetMapping,@PostMapping,@PutMapping,@DeleteMapping:@RequestMapping 的快捷方式。
@RequestBody:将 HTTP 请求体转换为 Java 对象。
@PathVariable:获取 URL 路径中的变量(如 /user/{id})。
@RequestParam:获取请求参数(如 ?name=xxx)。
3. 事务管理
@Transactional:声明式事务管理,可配置隔离级别、传播行为等。