Databases Reference
In-Depth Information
</list>
</class>
</hibernate-mapping>
Im folgenden Code-Fragment werden vier Alben definiert, die dann mit Hilfe der
Methode speichern einer neuen Reihe namens Lustiges Taschenbuch zu-
geordnet werden.
Alben[] ltbs={
new Alben(1,"Der Kolumbusfalter",new BigDecimal("2.50"),1967),
new Alben(6, "Micky-Parade", new BigDecimal("2.80"), 1968),
new Alben(23, "Ritter Donald ist der Beste",
new BigDecimal("3.50"), 1973),
new Alben(16, "Donald in 1000 und einer Nacht",
new BigDecimal("3.00"), 1971)
};
speichern("Lustiges Taschenbuch", ltbs);
In der Methode speichern wird ein neues Objekt vom Typ Reihen erzeugt, zu
dem dann alle Alben aus dem Array alben hinzugefügt werden. Der eigentliche
Transfer zum RDBMS findet erst nach dem Ende der Schleife statt: Im Rahmen
einer Transaktion wird das Objekt reihe in die Datenbank eingefügt und damit
auch automatisch alle zugehörigen Alben:
private void speichern(String name, Alben[] alben){
Reihen reihe=new Reihen(name);
for(Alben album : alben)
reihe.addAlbum(album);
Session session = sessionFactory.openSession();
Transaction transaction = session.beginTransaction();
session.save(reihe);
transaction.commit();
session.close();
Der Inhalt der Tabelle reihen beschränkt sich auf einen Datensatz, dessen id
den Wert 1 hat. Interessanter ist der Inhalt der Tabelle alben . Die Bedeutung der
Spalten haben wir uns weiter oben klargemacht. Hier können wir erkennen, dass
die Werte der Spalte seq die Reihenfolge der Alben im Array ltbs reflektieren.
19.8
Kein Allheilmittel
Hibernate ist keineswegs der einzige OR-Mapper. Die Java-Plattform bietet
auch alternative Werkzeuge wie EclipseLink 8 ; für .Net-Entwickler gibt es eine
8
www.eclipse.org/eclipselink/jpa.php
 
Search WWH ::




Custom Search