知识点:
1、被@Configuration
注解的类,本身也是组件。可以被获取实例化对象,调用方法等。
2、@Configuration(proxyBeanMethods = true或false)
对本身注解的类也有效。
测试 MyConfig 是否也是组件:实现步骤:
1、创建启动类:MainApplication
2、用注解@Configuration
创建配置文件类。
3、启动类中。是否可以获取容器里面的 MyConfig 组件。启动启动类验证。
第一步:创建启动类:MainApplication
**
第二步:@Configuration
创建配置类。
package com.wzy.boot.config;
@Configuration//配置文件类,为单实例
public class MyConfig {
}
第三步:通过启动类MyController 测试
从IOC取出MyConfig类的实例,结果:com.wzy.boot.config.MyConfig@325f7fa9
package com.wzy.boot;
/*
* @Description: @SpringBootApplication:这是一个SpringBoot应用
* @Author: WangZiYao
* @Date: 2021/4/8 15:57
*/
/*@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan("com.wzy.controller")*/
@SpringBootApplication(scanBasePackages = "com.wzy.boot")
public class MainApplication {
public static void main(String[] args) {
//1.获取IOC容器
ConfigurableApplicationContext run = SpringApplication.run(MainApplication.class, args);
//2.查看容器里的组件
String[] names = run.getBeanDefinitionNames();
for (String name : names) {
System.out.println(name);
}
//3.从容器中获取组件。
//验证@Cofiguration 注解的类本身也是组件。
MyConfig myConfig = run.getBean(MyConfig.class);
System.out.println(myConfig);//com.wzy.boot.config.MyConfig@325f7fa9
}
}