Value (Spring Framework 3.2.1.RELEASE API)
Date: 2013-01-24

org.springframework.beans.factory.annotation

## Annotation Type 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).

  Since:
    3.0
  Author:
    Juergen Hoeller
  See Also:
    `AutowiredAnnotationBeanPostProcessor`, `Autowired`, `BeanExpressionResolver`, `AutowireCandidateResolver.getSuggestedValue(org.springframework.beans.factory.config.DependencyDescriptor)`

- - ### Required Element Summary

    Required Elements
    Modifier and Type | Required Element and Description
    --- | ---
    `String` | `value` The actual value expression: e.g.

- - ### Element Detail

    - #### value

          public abstract String value

      The actual value expression: e.g. "#{systemProperties.myProp}".