org.springframework.validation.annotation

## Annotation Type Validated

    @Target(value={TYPE,PARAMETER})
    @Retention(value=RUNTIME)
    @Documented
    public @interface Validated

Variant of JSR-303's `Valid`, supporting the specification of validation groups. Designed for convenient use with Spring's JSR-303 support but not JSR-303 specific.

Can be used e.g. with Spring MVC handler methods arguments. Supported through `SmartValidator`'s validation hint concept, with validation group classes acting as hint objects.

Can also be used with method level validation, indicating that a specific class is supposed to be validated at the method level (acting as a pointcut for the corresponding validation interceptor), but also optionally specifying the validation groups for method-level validation in the annotated class. Can also be used as a meta-annotation on a custom stereotype annotation.

Since:
  3.1
Author:
  Juergen Hoeller
See Also:
  `Validator.validate(Object, Class[])`, `SmartValidator.validate(Object, org.springframework.validation.Errors, Object...)`, `SpringValidatorAdapter`, `MethodValidationPostProcessor`

### Optional Element Summary

Optional Elements
`Class<?>[]` `value` Specify one or more validation groups to apply to the validation step kicked off by this annotation.

### Element Detail

#### value

    public abstract Class<?>[] value

Specify one or more validation groups to apply to the validation step kicked off by this annotation.

JSR-303 defines validation groups as custom annotations which an application declares for the sole purpose of using them as type-safe group arguments, as implemented in `SpringValidatorAdapter`.

Other `SmartValidator` implementations may support class arguments in other ways as well.

Default:
  {}