Spring Boot注解创建bean,容器

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.测试结果

猜你喜欢

转载自blog.csdn.net/zhaolinxuan1/article/details/83629511