Hallo,
Wie ändere ich nur die Attribut in einem persistenten Objekt ohne es vorher zuladen und ohne die bestehenden Assoziationen Collections zu löschen.
Mein Ansatz ist eine neues Objekt mit new zu erzeugen, die id (des persitenten Objekts) und die Attribute zu setzen, die Collection (Many-to-many) auf null zu belassen und mit <Session>.update() zu speichern.
Allerdings wird dann die Collection gelöscht, was ich nicht möchte.
Wie kann ich verhindern das der Inhalt der Collection gelöscht wird?
Beispiel:
Beipielklasse:
public class Cat{
private long id;
private String name;
private Set kittens;
// getter and setter
}
// Das Objekt ist schon persistiert mit id=3 und hat in der Collection kittens z.B. drei Cats.
Cat cat = new Cat()
cat.setId(3);
cat.setName("NewName")
// cat.kittens ist nach dem new natürlich =null
Session session = ...
session.update(cat )
Nach der Update Operation sind die drei kittens weg
Vorab Danke für Eure Hilfe.
Gruß
Patrick
|