Pregunta

Si tengo un mapeo:

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

¿Cómo se debe crear el objeto de usuario? Hice esto:

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

Sin embargo, habrá la java.lang.ClassCastException: Type error. La clase Tipo solamente tiene un número entero y user_id type_name cadena en ella con get / set.

¿Por qué no funciona? ¿Dónde puedo encontrar documentación sobre cómo guardar objetos con la colección de elementos? Gracias tanto.

¿Fue útil?

Solución

Tener un vistazo a http: // docs .jboss.org / hibernación / estable / core / referencia / en / html / collections.html .

Cambiar el elemento a:

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

A continuación, puede agregar tipos al conjunto. Ahora lo tienes define como cadena.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top