@TargetSE(valueSE={FIELDSE,METHODSE,PARAMETERSE,ANNOTATION_TYPESE}) @RetentionSE(valueSE=RUNTIMESE) @DocumentedSE public @interface Value
通常、式駆動型またはプロパティ駆動型の依存性注入に使用されます。また、Spring MVC などのハンドラーメソッドの引数を動的に解決することもサポートされています。
一般的な使用例は、#{systemProperties.myProp}
スタイルの SpEL(Spring 式言語)式を使用して値を注入することです。または、${my.app.myProp}
スタイルのプロパティプレースホルダーを使用して値を挿入することもできます。
@Value
アノテーションの実際の処理は BeanPostProcessor
によって実行されることに注意してください。つまり、BeanPostProcessor
または BeanFactoryPostProcessor
型内で @Value
を使用することはできません。AutowiredAnnotationBeanPostProcessor
クラスについては、javadoc を参照してください(デフォルトでは、このアノテーションの存在をチェックします)。
public abstract StringSE value
#{systemProperties.myProp}
などの実際の値式、または ${my.app.myProp}
などのプロパティプレースホルダー。