Wim*_*uwe 2 java spring spring-boot spring-java-config
我正在尝试在我的 Spring Java 配置中添加一个 BeanPostProcessor。它似乎有效但仅适用于通过组件扫描创建的 bean (@Configuration, @RestController, ..)
我在 Java 配置中创建的 Bean 不是。
例如
@Configuration
public class MyConfiguration
{
@Bean
public MyBean myBean()
{
return new MyBean();
}
@Bean
public static MyBPP myBeanPostProcessor()
{
return new MyBPP();
}
}
Run Code Online (Sandbox Code Playgroud)
请注意,我确实将 BeanPostProcessor 的方法声明为静态(参见http://forum.spring.io/forum/spring-projects/container/123899-beanpostprocessor-with-bean-annotation-not-working)。
因此创建了一个 MyBean 实例,但 BeanPostProcessor 永远不会处理它。
试试我的测试,它对我有用
class MyBPP implements BeanPostProcessor {
@Override
public Object postProcessBeforeInitialization(Object bean, String beanName) {
System.out.println(bean);
return bean;
}
@Override
public Object postProcessAfterInitialization(Object bean, String beanName) {
return bean;
}
}
@Configuration
public class MyConfiguration {
@Bean
public MyBean myBean() {
return new MyBean();
}
@Bean
public MyBPP myBeanPostProcessor() {
return new MyBPP();
}
public static void main(String[] args) {
new AnnotationConfigApplicationContext(MyConfiguration.class);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10116 次 |
| 最近记录: |