Java: Annotationen

Hallo zusammen,

ich hoffe es kennt sich jemand mit Java, JEE, JPA und Hibernate aus.

Wie sieht es mit dem Mischen von Annotationen aus? Mich würde die Definitionen interessieren, welche Annotationen weiterverwertet werden oder ignoriert werden, wenn z.B. die Variable und die Methode dieselbe Annotation besitzen:

Code:
@NotNull
String variable;

@NotNull
public String getVariable() {
   return variable;
}

@NotNull
public void setVariable(String var) {
   variable = var;
}
oder die Variable und die zugehörigen Methoden unterschiedliche Annotationen besitzen:

Code:
@Column(name="STREET")
String variable;

@Column(name="CAR")
public String getVariable() {
   return variable;
}

@Column(name="GARDEN")
public void setVariable(String var) {
   variable = var;
}
Was ist dann Konvention, wo ich die Annotation einsetze? Wie geht damit dann JPA und z.B. Hibernate damit um? Welche haben dann Vorrang oder werden ignoriert?

Ich habe auch schon im Java- und Hibernate-Forum nachgefragt, dort konnte mir anscheinend niemand helfen. In der JPA Specification bin ich ebenfalls nicht fündig geworden.

Jeanne dArk
 
In der Regel sieht man die Annotations an den Feldern.
Warum sollte man an beiden Stellen annotieren?
Schreib dir doch ein kleinen JUnit Test, dann solltest du schnell die Antwort finden.
 
Es geht darum, dass ich ein Reverse Engineering Tool programmieren muss, das dann eben auch einen Fehler auswirft, wenn die Annotationen falsch gesetzt sind. Deshalb geht es nicht darum, waurm man es sollte, sondern wie es definitionsgemäß richtig ist.
Klar könnte ich es auch selber testen, aber es muss auch irgendwo offiziell schriftlich festgehalten worden sein, damit es für die Entwickler eindeutig ist.
 
Zurück
Oben