Por 9.99€ al mes tendrás acceso completo a todos los cursos. Sin matrícula ni permanencia.
Permiten definir un grupo de propiedades en una clase externa. Son útiles cuando queremos evitar consultas 1 a 1 que restarían eficiencia a nuestra aplicación.
La siguiente estructura de clases dará lugar a una única tabla en la base de datos que contendrá la suma de todos los atributo.
@Entity
public class Autor {
...
@Embedded
private Direccion direccion;
@Embeddable
public class Direccion {
private String calle;
private int numero;
private int piso;
private int puerta;
Si quieres que la entidad embebida sea además clave primaria, usaremos la etiqueta @EmbeddedID en lugar de @Embedded,
Para no tener el siguiente error, tendremos que pasarle una dirección al autor siempre que lo vayamos a salvar.
javax.persistence.PersistenceException: org.hibernate.PropertyValueException: not-null property references a null or transient value ...
Para evitar este error, podemos hacer que la propiedad @Embeddable y que al menos una de sus propiedades acepten valores nulos, utilizando la siguiente anotación:
@Column(nullable = true)