La columna discriminadora en sí misma se usa para distinguir entre diferentes clases cuando las jerarquías de clase se asignan planas o verticales. La idea detrás del mapeo plano y vertical es que cada clase se mapea en una sola fila en la tabla de clases base. El valor del discriminador se utiliza para definir el tipo de cada fila.
¿Cómo encuentras la columna del discriminador?
La definición de la entidad: @Entity(name=”Port”) @DiscriminatorColumn(name=”type”, discriminatorType=DiscriminatorType. STRING, length=10) @DiscriminatorValue(value=”port”) @Table(name=”vPorts”) @XmlRootElement(nombre=”puerto”) clase pública PortEntity {
¿Qué es el discriminador en Java?
Tipo de anotación DiscriminatorColumn Especifica la columna discriminadora para las estrategias de asignación de herencia SINGLE_TABLE y JOINED. La estrategia y la columna discriminadora solo se especifican en la raíz de una jerarquía o subjerarquía de clase de entidad en la que se aplica una estrategia de herencia diferente.
¿Cuál es el uso de la columna discriminadora en Hibernate?
Si desea utilizar esta estrategia con JPA, la tabla de su base de datos debe tener una columna discriminadora. El valor de esta columna identifica la clase de entidad a la que se asignará cada registro. Por defecto, Hibernate usa el mismo enfoque.
¿Cuál es el uso de @DiscriminatorColumn?
El discriminador se usa comúnmente en la herencia SINGLE_TABLE porque necesita una columna para identificar el tipo de registro. Ejemplo: Tienes una clase Student y 2 subclases: GoodStudent y BadStudent.