Document ID: /fineweb-2-swissfilter-quality_10-filterrobots/filtered/03327.jsonl.gz/1014

JPA - Zugriff auf Attribute
Annotations können entweder auf dem Feld, den Properties oder auch mixed definiert werden. Dabei gelten folgende Regeln:
Beim Field Access dürfen die Attribute nicht public definiert sein. Alle anderen Visibility Types sind erlaubt. Die Annotations werden direkt vor der Attributdefinition platziert. Dabei ist es egal, ob diese auf der gleichen Zeile wie das Attribut oder den Zeilen davor spezifiziert werden.
Beim Property Access sollten die Attribute private sein. Der Zugriff muss über getter und Setter erfolgen, wobei das jeweilige paar die gleichen Datentypen entgegennehmen bzw. Zurückliefen sollte. Die Annotations müssen vor dem getter spezifiziert werden. Die JPA Implementation ermittelt anhand des Rückgabewerts des Getters den Datentypen.
Natürlich ist auch mixed Access möglich. In diesem Fall wird pro Feld bzw. Property entschieden, welcher Zugriffsweg gewählt werden soll. Die Klasse ist hierfür mit der Annotation
@Access(AccessType.FIELD) zu annotieren. Alle Felder, welche nicht über diesen Default-Zugriffsweg persistiert werden sollen, müssen als
@Transient markiert werden. Die entsprechenden getter erhalten dafür mindestens die Annotation
@Access(AccessType.PROPERTY).