Spring bean是(shi)Spring框架在運行時管理的(de)對象。Spring bean是(shi)任(ren)何(he)Spring應用(yong)程序的(de)基本構建塊。我(wo)們編寫的(de)大多數(shu)應用(yong)程序邏輯代碼都將放在Spring bean中。
執行(xing)順序:
Constructor > @Autowired > @PostConstruct > InitializingBean > init-method
因此(ci)不能(neng)在構造函(han)數中(zhong)直接使用@Autowired定義的參數(shu),而(er)應(ying)該在@PostConstruct中調用。
例(li)如:
public class Metric {
?
@Autowired
MonitorMetric monitorMetric;
?
final String string;
?
// 構造函數
public Metric(String string){
this.string = string;
}
?
// 在 PostConstruct 中獲(huo)取 Autowired 的(de)值
@PostConstruct
public String initialize(){
return monitorMetric.getStr();
}
}