1. 程式人生 > >Spring Boot註解建立bean,容器

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.測試結果