Spring注入静的オブジェクトの使用方法
1991 ワード
静的注入要件はSpringによって主クラス にスキャンできる.はSpringによって注入されたクラス にスキャンすることができる.
注入の3つの方法
注入されたクラス
1.コンストラクタ注入の使用
2.set注入
setはstatic静的メソッドではありません
3.@PostConstruct注入
注入されたクラスを静的オブジェクトに割り当てる
注入の3つの方法
注入されたクラス
package lihan.properties;
import org.springframework.stereotype.Component;
// Spring
@Component
public class ConfigProperties {
private String aaa = "aaa";
private String bbb = "bbb";
private String ccc = "ccc";
private String ddd = "ddd";
private String eee = "eee";
public String getAaa() {
return aaa;
}
public void setAaa(String aaa) {
this.aaa = aaa;
}
public String getBbb() {
return bbb;
}
public void setBbb(String bbb) {
this.bbb = bbb;
}
public String getCcc() {
return ccc;
}
public void setCcc(String ccc) {
this.ccc = ccc;
}
public String getDdd() {
return ddd;
}
public void setDdd(String ddd) {
this.ddd = ddd;
}
public String getEee() {
return eee;
}
public void setEee(String eee) {
this.eee = eee;
}
}
1.コンストラクタ注入の使用
@Component
public class StuStaticConfig {
private static ConfigProperties configProperties;
public StuStaticConfig(ConfigProperties configProperties) {
this.configProperties = configProperties;
}
}
2.set注入
setはstatic静的メソッドではありません
@Component
public class StuStaticConfig {
private static ConfigProperties configProperties;
@Autowired
public void setConfigProperties(ConfigProperties configProperties) {
StuStaticConfig.configProperties = configProperties;
}
}
3.@PostConstruct注入
@Component
public class StuStaticConfig {
private static ConfigProperties configProperties;
@Autowired
private ConfigProperties configPropertiesTemp;
@PostConstruct
public void init() {
this.configProperties = this.configPropertiesTemp;
}
}
注入されたクラスを静的オブジェクトに割り当てる