猿问

Spring:如何为静态字段注入值?

Spring:如何为静态字段注入值?

有了这堂课

@Componentpublic class Sample {

    @Value("${my.name}")
    public static String name;}

如果我尝试Sample.name,它总是'空'。所以我尝试了这个。

public class Sample {

    public static String name;

    @PostConstruct
    public void init(){
        name = privateName;
    }

    @Value("${my.name}")
    private String privateName;

    public String getPrivateName() {
        return privateName;
    }

    public void setPrivateName(String privateName) {
        this.privateName = privateName;
    }  }

这段代码有效。Sample.name设置得当。这是好方法吗?如果没有,有什么更好的方法吗?怎么做?


蝴蝶刀刀
浏览 754回答 2
2回答

海绵宝宝撒

仅供参考:以上代码会导致Sonar / Checkstyle违规(如果您对此类事情感到困扰),因为您有一个实例方法写入静态字段。 
随时随地看视频慕课网APP
我要回答