Spring 注入静态对象使用三种方式示例

 更新时间:2023年07月20日 09:53:12   作者:李晗  
这篇文章主要为大家介绍了Spring注入静态对象使用的三种方式示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

静态注入要求

能被Spring扫描到主类

能被Spring扫描到注入的类

被注入的类

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;
    }
}

将注入的类,赋值给静态对象上

以上就是Spring 注入静态对象使用三种方式的详细内容,更多关于Spring 注入静态对象的资料请关注脚本之家其它相关文章!

相关文章

最新评论