org.hibernate.id.EntityIdentifierNature Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of beangle-hibernate-core Show documentation
Show all versions of beangle-hibernate-core Show documentation
Hibernate Orm Core Shade,Support Scala Collection
/*
* Hibernate, Relational Persistence for Idiomatic Java
*
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
* See the lgpl.txt file in the root directory or .
*/
package org.hibernate.id;
/**
* Describes the possible natures of an entity-defined identifier.
*
* @author Steve Ebersole
*/
public enum EntityIdentifierNature {
/**
* A simple identifier. Resolved as a basic type and mapped to a singular, basic attribute. Equivalent of:
* - an {@code
} mapping
* - a single {@code @Id} annotation
*
*/
SIMPLE,
/**
* What Hibernate used to term an "embedded composite identifier", which is not to be confused with the JPA
* term "embedded". Resolved as a tuple of basic type values and mapped over multiple singular attributes.
* More precisely, a composite identifier where there is no single attribute representing the composite value.
*
* Equivalent to:
*
* -
* a {@code
} mapping without a specified {@code name} XML-attribute
* (which would name the single identifier attribute, if it were specified), or
*
* -
* multiple {@code @Id} annotations.
*
*
*
* May or may not have a related "lookup identifier class" as indicated by an {@code @IdClass} annotation.
*
* @see jakarta.persistence.IdClass
*/
NON_AGGREGATED_COMPOSITE,
/**
* Composite identifier mapped to a single entity attribute by means of an actual component class used to
* aggregate the tuple values.
* Equivalent of:
* -
* a {@code
} mapping naming a single identifier attribute via the {@code name} XML-attribute
*
* -
* an {@code @EmbeddedId} annotation
*
*
*
* @see jakarta.persistence.EmbeddedId
*/
AGGREGATED_COMPOSITE
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy