## org.springframework.context.annotation
Annotation Type Scope

    @Target(value={TYPE,METHOD})
    @Retention(value=RUNTIME)
    @Documented
    public @interface Scope

When used as a type-level annotation in conjunction with the `Component` annotation, indicates the name of a scope to use for instances of the annotated type.

When used as a method-level annotation in conjunction with the `Bean` annotation, indicates the name of a scope to use for the instance returned from the method.

In this context, scope means the lifecycle of an instance, such as singleton, prototype, and so forth.

Since:
  2.5
Author:
  Mark Fisher, Chris Beams
See Also:
  `Component`, `Bean`

Optional Element Summary
`ScopedProxyMode` `proxyMode` Specifies whether a component should be configured as a scoped proxy and if so, whether the proxy should be interface-based or subclass-based.
`String` `value` Specifies the scope to use for the annotated component/bean.

### value

    public abstract String value

  Specifies the scope to use for the annotated component/bean.

  Returns:
    the specified scope
  Default:
    "singleton"

### proxyMode

    public abstract ScopedProxyMode proxyMode

  Specifies whether a component should be configured as a scoped proxy and if so, whether the proxy should be interface-based or subclass-based.

  Defaults to `ScopedProxyMode.NO`, indicating that no scoped proxy should be created.

  Analogous to <aop:scoped-proxy/> support in Spring XML.

  Default:
    org.springframework.context.annotation.ScopedProxyMode.DEFAULT