Spring Aware 接口回调顺序
BeanNameAware
BeanClassLoaderAware
BeanFactoryAware
EnvironmentAware
EmbeddedValueResolverAware
ResourceLoaderAware
ApplicationEventPublisherAware
MessageSourceAware
ApplicationContextAware
测试类
@Component
public class SpringAware implements BeanNameAware, BeanClassLoaderAware,
BeanFactoryAware, EnvironmentAware, EmbeddedValueResolverAware, ResourceLoaderAware,
ApplicationEventPublisherAware, MessageSourceAware, ApplicationContextAware {
@Override
public void setBeanName(String name) {
System.out.println("setBeanName");
}
@Override
public void setBeanClassLoader(ClassLoader classLoader) {
System.out.println("setBeanClassLoader");
}
@Override
public void setBeanFactory(BeanFactory beanFactory) throws BeansException {
System.out.println("setBeanFactory");
}
@Override
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
System.out.println("setApplicationContext");
}
@Override
public void setApplicationEventPublisher(ApplicationEventPublisher applicationEventPublisher) {
System.out.println("setApplicationEventPublisher");
}
@Override
public void setEmbeddedValueResolver(StringValueResolver resolver) {
System.out.println("setEmbeddedValueResolver");
}
@Override
public void setEnvironment(Environment environment) {
System.out.println("setEnvironment");
}
@Override
public void setMessageSource(MessageSource messageSource) {
System.out.println("setMessageSource");
}
@Override
public void setResourceLoader(ResourceLoader resourceLoader) {
System.out.println("setResourceLoader");
}
}
测试结果
setBeanName
setBeanClassLoader
setBeanFactory
setEnvironment
setEmbeddedValueResolver
setResourceLoader
setApplicationEventPublisher
setMessageSource
setApplicationContext