Annotation (java)
Annotation (representado pela inicial @), é um recurso da Plataforma Java, introduzido como padrão de linguagem na versão 1.5. (biblioteca java.lang.annotation*;).[1]
Descrição
[editar | editar código fonte]Fornece a opção do uso de metadata ao longo do código que podem ser posteriormente interpretadas por um compilador ou pré compilador que irá realizar alguma tarefa pré definida.
O Annotation evita em muitos casos a criação de arquivos XML de configuração, que tornam tão difícil a compreensão de alguns sistemas. Além de ajudar na automatização de algumas tarefas, tais como a criação das interfaces do EJB e a criação das configurações dos WebServices.
Anterior a ele, esta funcionalidade não era nativa na plataforma, e uma função parecida a essa só era possível com o uso de uma API externa, o Xdoclet.
Algumas anotações
[editar | editar código fonte]Existem atualmente mais de 60 anotações;
- @Entity - Declara uma entidade do tipo relacional, como uma tabela, porém é uma classe java.
- @Id - Define o identificador da tabela
- @SequenceGenerator - Forma de auto incremento de determinado campo
Exemplo
[editar | editar código fonte]  // @Twizzle é uma anotação do método ''toggle()''.
  @Twizzle
  public void toggle() {
  }
  // Declaração da anotação Twizzle.
  public @interface Twizzle {
  }
Anotações também podem incluir parametros e chaves:
  // Usado também: @Edible(value = true)
  @Edible(true)
  Item item = new Carrot();
  public @interface Edible {
    boolean value() default false;
  }
  @Author(first = "Oompah", last = "Loompah")
  Book book = new Book();
  public @interface Author {
    String first();
    String last();
  }
Associação
[editar | editar código fonte]A relação de cardinalidade para as entidades é feita da forma tradicional, ou seja;
- @OneToMany - 1 para muitos
- @ManyToOne - Muitos para 1
- @OneToOne - 1 para 1
- @ManyToMany - Muitos para muitos
Referências
- ↑ Coward, Danny (2 de novembro de 2006). «JSR 175: A Metadata Facility for the JavaTM Programming Language» (em inglês). Java Community Process. Consultado em 5 de março de 2008
 
	