高级 XML 配置
MVC 命名空间没有高级模式。如果你需要自定义一个 bean 的属性,而你无法通过其他方式更改,你可以使用 Spring ApplicationContext
的 BeanPostProcessor
生命周期挂钩,如下例所示
-
Java
-
Kotlin
@Component
public class MyPostProcessor implements BeanPostProcessor {
public Object postProcessBeforeInitialization(Object bean, String name) throws BeansException {
// ...
}
}
@Component
class MyPostProcessor : BeanPostProcessor {
override fun postProcessBeforeInitialization(bean: Any, name: String): Any {
// ...
}
}
请注意,你需要将 MyPostProcessor
声明为 bean,可以在 XML 中显式声明,也可以通过 <component-scan/>
声明让它被检测到。