Um aus einer Klasse eine Entity zu gestalten, die persistent gemacht werden kann, fügt man am Anfang die Annotation @Entity hinzu, um sie wie folgt als persistierbar zu markieren:
Für alle, die sich nun fragen, was denn dieses @Etwas bedeutet, hier eine kurze Vorstellung der so genannten Annotations. Java fehlte früher immer eine Möglichkeit, Metadaten in den Code einzubinden. Javadoc war eine Art von Metadaten zum Erstellen von Dokumentation und funktionierte, indem man Tags mit dem Präfix @ innerhalb von Kommentarblöcken verwendete. Auf dieser Idee baut XDoclet auf, welches zur Speicherung eigener Metadaten verwendet werden konnte. Ein alternativer Ansatz bestand darin, jeder Klasse eine entsprechende XML-Datei zuzuordnen. So verwendete Hibernate zum Beispiel eine .hbm.xml-Datei zusammen mit der Klasse für die Abbildungsinformationen für die ebenso benannte Klasse.
Beide Techniken funktionieren gut, aber bei Java 5 kam der Wunsch nach einer Inline-Implementierung auf, die durch den Compiler verifizierbar und zur Laufzeit erkennbar ist. Und genau hier kommen Annotations ins Spiel. Für die meisten Zwecke reicht es, zu wissen, dass solche Annotations die Methode sind, mit deren Hilfe man Metadaten hinzufügen kann, wie man eine Klasse persistent abbildet.
Die @Entity-Annotation markiert die Klasse als persistent. Um sie einfach abrufen zu können, benötigen die POJOs jeweils einen Primärschlüssel. Eine übliche Methode hierfür besteht darin, ein Feld vom Typ Long hinzuzufügen, welches als Primärschlüssel dient. Und so fügt man den Klassen dieses Feld hinzu:
Die @Id-Annotation markiert die Getter-Methode als das Primärschlüsselfeld und die @GeneratedValue-Annotation sorgt dafür, dass die Persistenzschicht einen Wert für dieses Feld generiert. Das reicht schon. Nun kann man mit einer Adresse arbeiten.
Neueste Kommentare
Noch keine Kommentare zu EJB-Persistenz mit Java SE
Kommentar hinzufügenVielen Dank für Ihren Kommentar.
Ihr Kommentar wurde gespeichert und wartet auf Moderation.