Spring4擴充套件分析(注入ApplicationContext的方法)
阿新 • • 發佈:2018-12-27
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容器中存在。