Question

Si j'ai une application comme ceci:

<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>

Comment l'objet utilisateur doit être créé? Je l'ai fait:

User u = new User();
u.getType().add(new Type(type_name));
getHibernateTemplate().save(u);

Mais il y aura le java.lang.ClassCastException: Type d'erreur. La classe de type a seulement un user_id entier et type_name chaîne en elle avec get / set.

Pourquoi ça ne marche pas? Où puis-je trouver de la documentation sur les objets d'économie à la collecte d'éléments? Merci beaucoup.

Était-ce utile?

La solution

Jetez un oeil à http: // docs .jboss.org / veille prolongée / stable / core / référence / fr / html / collections.html .

Changer l'élément à:

<element column="type_name" type="Type" />

Ensuite, vous pouvez ajouter des types à l'ensemble. En ce moment vous avez défini comme String.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top