Annotation
Eine Annotation in Java ist ein Marker mit
@, der vom Compiler oder Container ausgewertet wird.In Jakarta EE = "Vertrag mit dem Container": "behandle das als X".
I. Beispiele
@Stateless // Bean-Typ
@Entity // JPA-managed
@WebServlet("/x") // URL-Mapping
@EJB // Inject
@Override // Compiler-Check
II. Wer wertet die aus?
| Wer | Wann | Wofür |
|---|---|---|
| Compiler | Compile-Zeit | @Override, @Deprecated |
| WildFly | Deploy-Zeit | @Stateless, @WebServlet, @Entity |
| Hibernate | Runtime | @Entity, @Id, @Column |
| Frameworks | Runtime | Eigene Logik per Reflection |
.NET-Vergleich
Wie [Attribute] in C# — same idea, andere Syntax.
III. Selber schreiben
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface MyAnnotation { }