Anotaciones a nivel de clase:
@Entity
Establece la clase persistente.
@Table(name=“nombreTabla")
Configura características de la tabla donde se persiste la clase.
@MappedSuperclass
Determina la súper clase de una clase persistente.
@Embeddable
Determina la clase contenida en una clase persistente.
@Inheritance(strategy = estrategiaTipo)
Define el tipo de estrategia para persistir una jerarquía de herencia entre clases.
@DiscriminatorColumn
Define la columna (nombre y tipo de dato) utilizada como discriminante.
@DiscriminatorValue
Determina el valor para la columna utilizada como discriminador.
@PrimaryKeyJoinColumn(name=“nombreIdentificador")
Define el nombre de la clave relacionante.
Anotaciones a nivel de propiedades
@Id
Define la clave primaria.
@GeneratedValue
Establece el modo de asignación de los valores de la clave primaria.
@Column
Determina características de la columna de la tabla.
@Transient
Indica propiedad no persistente.
@Embedded
Indica que la propiedad es un objeto agregado.
@EmbeddedId
Indica que la clave primaria es por composición.
@PrimaryKeyJoinColumn
Define la clave primaria como relacionante.
@OneToOne
Asocia dos entidades en tablas distintas estableciendo vinculación única
entre ambas por medio de la clave primaria
@OneToMany
Asocia una entidad con una colección de otra entidad en tablas distintas
estableciendo vinculación referencial entre ambas
@ManyToOne
La asociación se establece en la entidad que es colección en la entidad
que la compone. Se genera vinculación referencial.
@ManyToMany
Son entre colecciones de entidades. Generan una tercera tabla
asociativa estableciendo una doble vinculación referencial.
Entidades persistentes
@Entity
@Table(name=“personas")
public class Persona {
@Id
@GeneratedValue( strategy = GenerationType.AUTO)
private Integer id;
@Column (name=“nombre", nullable=false, length=50)
private String nombre;
private String dni;
@Transient private int estado;
}
Asociaciones uno a uno
@Entity
@Table(name="usuarios")
public class Usuario {
@Id private Integer id;
private String nombre;
@OneToOne(cascade = CascadeType.ALL)
private Domicilio domicilio;
}
@Entity
@Table(name="domicilios")
public class Domicilio {
@Id private Integer id;
private String direccion;
@OneToOne(mappedBy = "domicilio")
private Usuario propietario
}
J2EE, cobol, spring, maven, hibernate, html, css, javascript, angular, todo el backend y el frontend utilizado en los entornos profesionales
Suscribirse a:
Comentarios (Atom)
Curso de Java en los entornos profesionales 2025 - Tapa blanda
Este curso integral de Java abarca temas fundamentales hasta avanzados, desde la historia de Java y la arquitectura de la máquina virtual...
-
COMMIT y MERGE DE LOS CAMBIOS EN EL CÓDIGO DE UN PROYECTO Lo primero de todo, a primera hora de la mañana de forma diaria, deberíamos h...
-
Necesitamos tener una maquina virtual de Java (JVM) para poder ejecutar nuestras aplicaciones, esta se puede descargar dependiendo del perfi...
-
El lenguaje de programación Java es un lenguaje orientado a objetos lo que quiere decir que todos los recursos que creamos y administramos ...
