Ámbito y emplazamiento de las anotaciones

Puede añadir anotaciones al código fuente a nivel de clase, método y campo.

Utilización de anotaciones

EJB 3.1 y la API de persistencia Java™ (JPA) utilizan anotaciones de metadatos, que es un elemento que apareció en J2SE 5.0. Una anotación consta del signo @ precediendo a un tipo de anotación, algunas veces seguido por una lista entre paréntesis de pares elemento-valor. La especificación EJB 3.1 define varios tipos de anotación, por ejemplo:
  • Anotación que define el componente, tal como @Stateless, que especifica el tipo de bean
  • @Remote y @Local especifican si un bean es accesible de forma remota o local
  • @TransactionAttribute especifica atributos de transacción
  • @MethodPermissions, @Unchecked y @SecurityRoles especifican permisos de seguridad y de método
La API de persistencia Java añade anotaciones específicas de la creación de entidades, por ejemplo:
  • @Entity es una anotación que define el componente y que especifica que una clase es una entidad
  • @Table especifica el origen de datos que se debe utilizar en la clase
Nota: Las anotaciones de correlación JPA (por ejemplo, @Id, @Column) se pueden aplicar a campos y métodos, pero para cualquier clase de entidad individual, puede aplicar las anotaciones sólo a campos o a métodos. Los campos solo pueden tener visibilidad privada, protegida o de paquete, y no se permite que los clientes de una entidad accedan a los campos directamente, por lo que es necesario definir métodos de obtención y de establecimiento públicos.

Ámbito y emplazamiento de las anotaciones

Las anotaciones trabajan a nivel de clase, interfaz, método o campo. Por ejemplo, las anotaciones que definen el componente (tales como @Stateless o @Entity) son anotaciones a nivel de clase y se insertan en la sección de comentarios antes de la declaración de clases:
package com.ibm.websphere.ejb3sample.counter;

import javax.ejb.Stateless;
import javax.interceptor.Interceptors;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;

@Stateless
@Interceptors ( Audit.class )

public class StatelessCounterBean implements LocalCounter, RemoteCounter {
El orden de estas anotaciones no es importante; normalmente, la anotación que define el componente se coloca antes que otras anotaciones, pero este emplazamiento no es obligatorio. Las anotaciones a nivel de método y de campo aparecen dentro de la clase o método:
public class JPACounterEntity {

    @Id
    private String primarykey = "PRIMARYKEY";

    private int value = 0;
Icono que indica el tipo de tema Tema de conceptos
Términos y condiciones para centros de información | Comentarios

Icono de indicación de fecha y hora Última actualización: 22 de abril de 2014

Nombre de archivo: cusingannotations.html