Celem powstania platform Java™ EE 5 i Java EE 6 było zminimalizowanie liczby artefaktów, które należy utworzyć i konserwować, co pozwala uprościć proces projektowania. Środowiska Java EE 5 i Java EE 6 obsługują wstrzykiwanie adnotacji do kodu źródłowego, co umożliwia osadzanie w kodzie źródłowym powiadomień o zasobach, zależnościach, usługach i cyklu życia bez konieczności konserwacji tych artefaktów w innym miejscu.
Adnotacja to modyfikator lub znacznik metadanych udostępniający dodatkowe dane dla klas, interfejsów, konstruktorów, metod, pól, parametrów i zmiennych lokalnych języka Java. Adnotacje zastępują standardowy, wspólny kod, który jest wymagany przez niektóre aplikacje. Adnotacja może na przykład zastąpić parę interfejsu i implementacji, która jest wymagana dla usługi Web Service. Adnotacje mogą także zastępować dodatkowe pliki, które są wymagane przez programy i konserwowane niezależnie. Dzięki użyciu adnotacji takie oddzielne pliki nie są już wymagane. Adnotacje mogą na przykład zastąpić deskryptor wdrażania komponentów JavaBeans™, który jest konserwowany niezależnie.
package com.ibm.counter;
import javax.ejb.Stateless;
@Stateless
public class CounterBean {
}
Więcej informacji na temat kategorii adnotacji obsługiwanych przez środowiska Java EE 5 i Java EE 6 zawiera sekcja Typy adnotacji.