1. 程式人生 > >Spring4擴充套件分析(注入ApplicationContext的方法)

Spring4擴充套件分析(注入ApplicationContext的方法)

Spring4注入ApplicationContext的方法

第一種:使用@Autowired註解

@Component
public class User{
    @Autowired
    private ApplicationContext applicationContext;
public void show(){
        System.out.println("user:"+applicationContext.getClass());
    }
}

AnnocationConfigApplicationContext context = new AnnocationConfigApplicationContext("com.edu.spring");

context.getBean("user",User.class).show();

第二種:

@Component
public class Book implements ApplicationContextAware{
	private ApplicationContext applicationContext;
	public void setApplicationContext(ApplicationContext applicationContext)throws Exception{
		this.applicationContext = applicationContext;
	}
	public void show(){
		System.out.println("book:"+applicationContext.getClass());
	}
}

第三種:

@Component
public class Bank{
	private ApplicationContext applicationContext;
	public Bank(ApplicationContext applicationContext){
		this.applicationContext = applicationContext;
	}
	public void show(){
		System.out.println("bank:"+applicationContext.getClass());
	}
}
注意:建構函式只能有一個,如果有多個的話,就必須有一個無參的建構函式,此時spring會呼叫無參的建構函式;建構函式的引數必須都要在spring容器中存在。