Annotation Type Resource

Skip navigation links

Overview
Package
Class
Use
Tree
Deprecated
Index
Help

Prev Class
Next Class

Frames
No Frames

Summary: 
Field | 
Required | 
Optional

Detail: 
Field | 
Element

javax.annotation
Annotation Type Resource

@Target(value={TYPE,FIELD,METHOD})
 @Retention(value=RUNTIME)
 @Repeatable(value=Resources.class)
public @interface Resource

The Resource annotation marks a resource that is needed by the application. This annotation may be applied to an application component class, or to fields or methods of the component class. When the annotation is applied to a field or method, the container will inject an instance of the requested resource into the application component when the component is initialized. If the annotation is applied to the component class, the annotation declares a resource that the application will look up at runtime.

Even though this annotation is not marked Inherited, deployment tools are required to examine all superclasses of any component class to discover all uses of this annotation in all superclasses. All such annotation instances specify resources that are needed by the application component. Note that this annotation may appear on private fields and methods of superclasses; the container is required to perform injection in these cases as well.

Since:
    1.6, Common Annotations 1.0

    Optional Element Summary
    Optional Elements Modifier and Type 	Optional Element and Description
    Resource.AuthenticationType 	authenticationType
    The authentication type to use for this resource.
    String 	description
    Description of this resource.
    String 	lookup
    The name of the resource that the reference points to.
    String 	mappedName
    A product-specific name that this resource should be mapped to.
    String 	name
    The JNDI name of the resource.
    boolean 	shareable
    Indicates whether this resource can be shared between this component and other components.
    Class<?> 	type
    The Java type of the resource.

    Element Detail
        name

        public abstract String name

        The JNDI name of the resource. For field annotations, the default is the field name. For method annotations, the default is the JavaBeans property name corresponding to the method. For class annotations, there is no default and this must be specified.

        Default:
            ""

        lookup

        public abstract String lookup

        The name of the resource that the reference points to. It can link to any compatible resource using the global JNDI names.

        Since:
            1.7, Common Annotations 1.1

        Default:
            ""

        type

        public abstract Class<?> type

        The Java type of the resource. For field annotations, the default is the type of the field. For method annotations, the default is the type of the JavaBeans property. For class annotations, there is no default and this must be specified.

        Default:
            java.lang.Object.class

        authenticationType

        public abstract Resource.AuthenticationType authenticationType

        The authentication type to use for this resource. This may be specified for resources representing a connection factory of any supported type, and must not be specified for resources of other types.

        Default:
            javax.annotation.Resource.AuthenticationType.CONTAINER

        shareable

        public abstract boolean shareable

        Indicates whether this resource can be shared between this component and other components. This may be specified for resources representing a connection factory of any supported type, and must not be specified for resources of other types.

        Default:
            true

        mappedName

        public abstract String mappedName

        A product-specific name that this resource should be mapped to. The mappedName element provides for mapping the resource reference to the name of a resource known to the applicaiton server. The mapped name could be of any form.

        Application servers are not required to support any particular form or type of mapped name, nor the ability to use mapped names. The mapped name is product-dependent and often installation-dependent. No use of a mapped name is portable.

        Default:
            ""

        description

        public abstract String description

        Description of this resource. The description is expected to be in the default language of the system on which the application is deployed. The description can be presented to the Deployer to help in choosing the correct resource.

        Default:
            ""

Skip navigation links

Overview
Package
Class
Use
Tree
Deprecated
Index
Help

Prev Class
Next Class

Frames
No Frames

Summary: 
Field | 
Required | 
Optional

Detail: 
Field | 
Element

Copyright © 1996-2017, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.

发布了133 篇原创文章 · 获赞 191 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/blog_programb/article/details/105717848