Spring Boot註解建立bean,容器
阿新 • • 發佈:2018-11-24
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.測試結果