私はこの疑念を持っています....コンストラクタの@Valueは本当に便利ですか?
私のオブジェクトのフィールドのデフォルト値を持っているとしようとしていましたが、デフォルト値はプロパティから取り出そうとしていました。
だから、私はそれを使用については、この方法は
@Value("${app.message.text:default}")
final String text;
final Object object
MyClass(Object object){
this.object = object;
}
//getters for both fields
まあ、テキストは常にnullです....
それから私は、それが作業を行い、このように
final String text;
final Object object
MyClass(Object object, @Value("${app.message.text:default}") final String text){
this.object = object;
this.text = text
}
をしようとしたと思いましたしかし、コンストラクタでは、テキストの値を指定する必要があります....その後、私はプロパティのデフォルトを決して使用しません...私はこれを誤解しましたか?私はこの@Valueを使って何をしようとしているのかとにかくアーカイブしていますか?
ありがとうございました。
'@ Value'はSpring管理のBeanにのみ適用されます。あなたのクラスがSpringによって管理されていない場合は、何もする機会がありません。なぜなら、あなたの' @Value'フィールド無効である。 – Andreas