Por 9.99€ al mes tendrás acceso completo a todos los cursos. Sin matrícula ni permanencia.
Sin definir expresamente la tabla de pivote
@Entity @Getter @Setter
public class Alumno {
@Id
@GeneratedValue
private Long id;
private String nombre;
@ManyToMany
List<Asignatura> asignaturas;
}
@Entity @Getter @Setter
public class Asignatura {
@Id
@GeneratedValue
private Long id;
private String nombre;
@ManyToMany (mappedBy = "asignaturas")
List<Alumno> alumnos;
}
Session session = HibernateUtil.getSessionFactory().openSession();
Transaction transaction = session.beginTransaction();
Alumno alumno = new Alumno();
alumno.setNombre("Paco2");
Asignatura asignatura = new Asignatura();
asignatura.setNombre("Matemáticas");
ArrayList<Asignatura> asignaturas = new ArrayList<>();
asignaturas.add(asignatura);
ArrayList<Alumno> alumnos = new ArrayList<>();
alumnos.add(alumno);
asignatura.setAlumnos(alumnos);
alumno.setAsignaturas(asignaturas);
session.save(alumno);
session.save(asignatura);
transaction.commit();
session.close();
Definiendo expresamente la tabla de pivote
while(premium == false) verCodigo = false;
Para poder ver el código fuente, accede o suscríbete.
Al utilizar la clave embebida no se genera una columna adicional id en la base de datos y esta más alineado con las buenas prácticas.
nota | alumno_id (PK) | asignatura_id (PK) |
---|---|---|
10 | 1 | 1 |