Erstellen von Objekten aus Hibernate -Mapping
-
12-09-2019 - |
Frage
Wenn ich eine solche Kartierung habe:
<class name="Users" table="users">
<id column="id" name="id">
<generator class="native"/>
</id>
...
<set name="types" table="types" cascade="all">
<key column="user_id" />
<element column="type_name" type="string" />
</set>
</class>
Wie sollte das Benutzerobjekt erstellt werden? Ich war das:
User u = new User();
u.getType().add(new Type(type_name));
getHibernateTemplate().save(u);
Aber es wird den Fehler geben java.lang.ClassCastException: Type
. Die Typklasse hat nur eine Ganzzahl user_id
und String type_name
darin mit Get/Set.
Warum funktioniert es nicht? Wo finde ich Dokumentation zum Speichern von Objekten mit Elementensammlung? Vielen vielen Dank.
Lösung
Sich ansehen http://docs.jboss.org/hibernate/stable/core/reference/en/html/collections.html.
Ändern Sie das Element in:
<element column="type_name" type="Type" />
Dann können Sie dem Satz Typen hinzufügen. Im Moment haben Sie es als Zeichenfolge definiert.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow