此版本仍在开发中,尚不被认为是稳定的。对于最新的稳定版本,请使用 Spring Framework 6.2.10! |
基于注释的容器配置
Spring 为基于注释的配置提供了全面的支持,通过使用相关类上的注释来作组件类本身中的metadata,方法或字段声明。如示例:该AutowiredAnnotationBeanPostProcessor
, 弹簧用途BeanPostProcessors
结合注解,使核心 IOC容器感知特定的注解。
例如,@Autowired
注释提供了与 Autowiring Collaborators 中描述的相同功能,但具有更细粒度的控制和更广泛的适用性。此外,Spring 还提供对 JSR-250 注释的支持,例如@PostConstruct
和@PreDestroy
,以及支持 JSR-330(Java 依赖注入)注释包含在jakarta.inject
包,例如@Inject
和@Named
. 有关这些注释的详细信息可以在相关部分找到。
注释注入在外部属性注入之前执行。因此,外部配置(例如,XML 指定的 bean 属性)有效地覆盖了注释对于通过混合方法连接时的属性。 |
从技术上讲,您可以将后处理器注册为单独的 bean 定义,但它们隐式注册在AnnotationConfigApplicationContext
已经。
在基于 XML 的 Spring 设置中,您可以包含以下配置标签以启用与基于注释的配置混合和匹配:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
https://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
https://www.springframework.org/schema/context/spring-context.xsd">
<context:annotation-config/>
</beans>
这<context:annotation-config/>
元素隐式注册以下后处理器:
|