有没有办法在构建时通过Spring IoC设置这样的枚举值?
我想要做的是在类加载时注入下面的代码片段中硬编码的值:
public enum Car
{
NANO ("Very Cheap", "India"),
MERCEDES ("Expensive", "Germany"),
FERRARI ("Very Expensive", "Italy");
public final String cost;
public final String madeIn;
Car(String cost, String madeIn)
{
this.cost= cost;
this.madeIn= madeIn;
}
}
Run Code Online (Sandbox Code Playgroud)
假设应用程序必须部署在德国,Nanos是"几乎免费",或者在印度,法拉利是"负担不起".在这两个国家,只有三辆汽车(确定性集),不多也不少,因此是枚举,但它们的"内在"值可能不同.因此,这是不可变的上下文初始化的情况.