我有这个领域,现在我想注入:
public class MyConstants {
public final static String SOME_CONST = "someConts";
public final static String INJECTED_CONST = "injectedConst"; //<--- I want to inject this!
}
因此,除了删除final
,我还阅读了this文章,内容涉及如何将值注入静态变量,导致:
public class MyConstants {
public final static String SOME_CONST = "someConts";
@NonNull public static String INJECTED_CONST;
@Value("${const.injectedConst}")
public void setInjectedConst(String injectedConst) {
INJECTED_CONST = injectedConst;
}
}
[太好了,如何使用@Setter
来“龙目化”?
您可以尝试这样的事情:
@RequiredArgsConstructor(onConstructor = @__(@Value("${const.injectedConst}"))
这将创建在顶部带有Value批注的构造函数。不过,您需要再次将该字段定为最终字段。我不完全了解您的需求,所以不知道这是否可以解决您的问题。请让我知道。