org.springframework.beans.factory.annotation

## 注释类型 Value

-     @Target(value={FIELD,METHOD,PARAMETER,ANNOTATION_TYPE})
       @Retention(value=RUNTIME)
       @Documented
      public @interface Value

  Annotation at the field or method/constructor parameter level that indicates a default value expression for the affected argument.

  Typically used for expression-driven dependency injection. Also supported for dynamic resolution of handler method parameters, e.g. in Spring MVC.

  A common use case is to assign default field values using `#{systemProperties.myProp}` style expressions.

  Note that actual processing of the `@Value` annotation is performed by a `BeanPostProcessor` which in turn means that you cannot use `@Value` within `BeanPostProcessor` or `BeanFactoryPostProcessor` types. Please consult the javadoc for the `AutowiredAnnotationBeanPostProcessor` class (which, by default, checks for the presence of this annotation).

  从以下版本开始:
    3.0
  作者:
    Juergen Hoeller
  另请参阅:
    `AutowiredAnnotationBeanPostProcessor`, `Autowired`, `BeanExpressionResolver`, `AutowireCandidateResolver.getSuggestedValue(org.springframework.beans.factory.config.DependencyDescriptor)`

- - ### 必需元素概要

    所需元素
    限定符和类型 | 必需的元素和说明
    --- | ---
    `String` | `value` The actual value expression: for example `#{systemProperties.myProp}`.

- - ### 元素详细资料

    - #### value

          public abstract String value

      The actual value expression: for example `#{systemProperties.myProp}`.