整理 Spring 框架中的常用注解及其作用可以帮助你更好地理解和使用 Spring。以下是一些核心注解及其功能的简要概述:
目录
1. 核心注解
@Component
:标记一个类为 Spring 管理的组件(Bean),通常用于自定义组件。@Service
:标记一个服务层的类,功能与@Component
类似,但有语义上的差异。@Repository
:标记一个数据访问层的类,表示这是一个数据访问对象(DAO),并启用异常转换。@Controller
:标记一个控制器类,处理 Web 请求并返回视图或数据。
2. 依赖注入注解
@Autowired
:自动注入依赖,根据类型注入 bean。@Resource
:按名称自动注入依赖,类型不匹配时会按类型注入。@Inject
:与@Autowired
类似,但属于 JSR-330 标准。
3. 配置注解
@Configuration
:标记一个类作为配置类,用于定义 Bean。@Bean
:定义一个 Bean 方法,返回的对象将被 Spring 容器管理。@PropertySource
:指定属性文件的位置,加载配置属性。
4. AOP(面向切面编程)注解
@Aspect
:定义一个切面类,用于声明切面逻辑。@Before
:在目标方法执行前执行。@After
:在目标方法执行后执行。@Around
:在目标方法执行前后都执行,允许修改目标方法的返回值。
5. Web 注解
@RequestMapping
:定义请求 URL 与方法的映射。@GetMapping
:快捷方式,映射 HTTP GET 请求。@PostMapping
:快捷方式,映射 HTTP POST 请求。@PutMapping
:快捷方式,映射 HTTP PUT 请求。@DeleteMapping
:快捷方式,映射 HTTP DELETE 请求.@PathVariable
:从 URL 模板中提取变量。@RequestParam
:提取请求参数。@ResponseBody
:将方法返回的对象直接写入 HTTP 响应体中。@RestController
:@Controller
和@ResponseBody
的组合,返回 JSON 或 XML 数据。
6. 事务管理注解
@Transactional
:声明方法或类的事务属性,如事务的传播行为和隔离级别。
这些注解涵盖了 Spring 的许多核心功能。具体使用哪个注解,取决于你的应用需求和 Spring 的配置方式。