1.接口
public interface Animal {
public void print();
}
2.Cat类
import org.springframework.stereotype.Component;
@Component
public class Cat implements Animal{
@Override
public void print() {
System.out.println("我是Cat");
}
}
3.Dog类
import org.springframework.stereotype.Component;
@Component
public class Dog implements Animal{
@Override
public void print() {
System.out.println("我是dog");
}
}
4.创建IOC容器
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration//IOC容器 cat
public class JavaConfigCat {
@Bean("cat")
public Animal getToyota(){
return new Cat() ;
}
}
5.创建IOC容器
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration//IOC容器 dog
public class JavaConfigDog {
@Bean("dog")
public Animal getBMW(){
return new Dog() ;
}
}
6.统一管理bean
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;
@Configuration//IOC上层容器 统一管理bean
@Import({JavaConfigCat.class, JavaConfigDog.class})
public class ParentConfig {
}
7.测试类
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
public class ContextLoaderTest {
public static void main(String[] args) {
//初始化
AnnotationConfigApplicationContext contex=new AnnotationConfigApplicationContext(ParentConfig.class);
//获取bean
Animal animalDog= (Animal) contex.getBean("dog");
animalDog.print();
Animal animalCat= (Animal) contex.getBean("cat");
animalCat.print();
}
}
8.测试结果