<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.2.12.RELEASE</version>
</dependency>
自定义组件实现xxxAware在创建对象的时候会调用接口规定的方法注入相关组件Aware
把spring底层一些组件注入到自定义的bean中
@Component
public class Linux implements ApplicationContextAware, BeanNameAware, EmbeddedValueResolverAware {
ApplicationContext applicationContext;
public void setBeanName(String s) {
System.out.println("beanName的名称:"+s);
}
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
this.applicationContext=applicationContext;
System.out.println("获取应用上下文");
}
public void setEmbeddedValueResolver(StringValueResolver stringValueResolver) {
System.out.println(stringValueResolver.resolveStringValue("解析环境变量:${os.name}"));
}
}
public class Test {
public static void main(String[] args) {
AnnotationConfigApplicationContext applicationContext=new AnnotationConfigApplicationContext(TestConfig.class);
Linux bean = applicationContext.getBean(Linux.class);
System.out.println(bean);
}
}
![](https://i-blog.csdnimg.cn/blog_migrate/5fb679092bc57f03417a4b9ae3d47691.png)