Hola a todos.
Estoy empezando con hibernate, y me ha surgido una duda al hacer una relación many-to-many utilizando una join table. Quiero relacionar clientes de un videoclub con las peliculas que alquilan. Un usuario puede alquilar varias peliculas, y una pelicula puede ser alquilada por vario usuarios. Mi problema reside en que quiero hacer que una misma pelicula pueda ser alquilada varias veces por el mismo cliente, para lo cual guardo la fecha y hora en la que ha alquilado una pelicula. El modelo de datos que he creado para hacer esto es una tabla para los usuarios, con un id de clave primaria (usuario_id). Otra para las peliculas, tambien con el id (peli_id). Y la tercera, que me relaciona ambas tablas, he hecho una triple clave, con usuario_id, peli_id, y la fecha de alquiler, para conseguir que el mismo usuario pueda alquilar la misma pelicula en distintas fechas.
He hecho dos archivos de configuración, uno para usuarios, y otro para las pelis, con relación bidireccional entre ambas, utilizando sets. Pero no se como hacer para guardar el campo fecha de la tabla relacional (o cualquier otro campo que pudiera añadir en ella).
¿Como debo hacer el mapeo de las tablas?
¿Y la implementación de las clases?
Porque cuando hago un save, por ejemplo de un usuario, con su set cargado con las pelis que quiere alquilar, solo me salva las ids, y por tanto, al "repetir el alquiler", me da un error de inserción por clave primaria. Y si hago un update no se realiza la funcionalidad que quiero implementar. No se si me he explicado con claridad. Espero que me podais ayudar.
Muchas gracias de antemano.