En programación, una Anotación Java es una forma de añadir metadatos al código fuente Java que están disponibles para la aplicación en tiempo de ejecución o de compilación. Muchas veces se usa como una alternativa a la tecnología XML.

Las Anotaciones Java pueden añadirse a los elementos de programa tales como clases, métodos, metadatos, campos, parámetros, variables locales, y paquetes. Al contrario que las etiquetas añadidas a la documentación Java y procesadas con las herramientas tales como XDoclet, las Anotaciones Java son completamente accesibles al programador, mientras que el software se ejecuta, usando reflexión.

Historia

editar

Las Anotaciones Java fueron presentadas al Java Community Process como la especificación JSR-175 en 2002 y aprobadas en septiembre de 2004. Las Anotaciones empezaron a estar disponibles a partir de la versión 1.5 del JDK. La característica fue añadida al lenguaje de programación Java a través de dicha especificación.

Procesamiento

editar

Cuando se compila el código fuente de Java, el compilador Java almacena los metadatos de la Anotación en los ficheros/archivos de clases. Posteriormente, la JVM u otros programas pueden buscar los metadatos para determinar cómo interactuar con los elementos del programa o cambiar su comportamiento.

Sintaxis

editar

Declarar una Anotación es una variación de las etiquetas que han sido añadidas anteriormente a las secciones de comentarios.

Las Anotaciones toman la forma de una declaración de interfaz con un carácter @ precediéndola, y marcada opcionalmente con meta-anotaciones, como se ve debajo:

 @Retention(RetentionPolicy.RUNTIME)
 @Target({ElementType.METHOD})

En el ejemplo anterior, tanto Retention como Target son ejemplos de Anotaciones.

Un ejemplo de la declaración de una anotación es la siguiente:

public @interface EjemploAnotacion{ }

Como se puede ver en el ejemplo anterior es sumamente sencillo, es declarar una interface solo que se le debe anteponer el símbolo "@"

Ventajas

editar

Las Anotaciones permiten al programador declarar en su código fuente cómo debe comportarse el software. Esto es un ejemplo de cómo las construcciones de la Programación declarativa pueden añadirse al lenguaje procedimental.

Desventajas

editar
  • Añadir metadatos en tiempo de ejecución puede causar sobrecarga adicional de memoria.
  • Hay pocos estándares que indiquen cómo usar las etiquetas de metadatos.

Véase también

editar

Enlaces externos

editar

📚 Artikel Terkait di Wikipedia

Java (lenguaje de programación)

para acceso a bases de datos JDBC (Java DataBase Conectivity). La interfaz JNDI (Java Naming and Directory Interface) para servicios de directorio. RMI

XDoclet

posible lograr más funcionalidad agregando metadata (atributos) a su código. Esto se lleva a cabo con tags JavaDoc. XDoclet permite integración continua

Meta-Object Facility

Group. p. 1. Consultado el 17 de febrero de 2014.  Common Interface Model (CIM) Interface Structure, version 2.5.0 Especificación oficial sobre MOF de

Spring Framework

2002, Rod Johnson presentó por primera vez su código del framework de Java Interface 21 que vendría siendo la base de framework spring.​ Se formó un pequeño

MyBatis

muestra un mapper, que es una interfaz Java con anotaciones de MyBatis. package org.mybatis.example; public interface BlogMapper { @Select("select * from

Single-page application

similar a Single Document Interface (SDI), que es una técnica para las aplicaciones de escritorio. Flanagan, David, "JavaScript - The Definitive Guide"

WorldCat

catalogadores también pueden utilizar WorldShare Record Manager​ o WorldCat Metadata API​ para fines similares.​ Biblioteca digital «Search for library items»

Component Object Model

tipos contienen metadatos que representan los tipos COM. Sin embargo, estos tipos deben ser primero descritos usando el Microsoft Interface Definition Language