标签: java spring
是否有可能实现这样的任务。此处的article处理private static字段成员,但在这种情况下无法帮助,因为无法分配最终成员。
private static
使用private static final作为成员的限定符的理由:
private static final
我不确定这是否是反模式,但如果是,那么我的理由是否有资格使用它?如果是,那怎么办呢。如果不是,那么请建议一个替代方案(我仍然有兴趣知道如何实现这一目标,仅用于知识目的)。
答案 0 :(得分:1)
你想做什么,根本不可能。
最根本的原因是Java取代static final"变量"代码中出现的实际值(因为它当然在编译时已知)。查看this SO回答了解更多详情。
static final
即使您没有使用final,Spring仍然不允许您直接向static变量注入值。您必须使用像:
final
static
@Value("${my.name}") public void setPrivateName(String privateName) { Sample.name = privateName; }
请查看this以获取更多答案。