All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.hibernate.id.EntityIdentifierNature Maven / Gradle / Ivy

There is a newer version: 6.5.0.CR2
Show newest version
/*
 * 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. * Specifically a composite identifier where there is no single attribute representing the composite value. * Equivalent of:
    *
  • * a {@code } mapping without a specified {@code name} XML-attribute (which would name * the single identifier attribute *
  • *
  • * multiple {@code @Id} annotations *
  • *
* * NOTE : May or may not have a related "lookup identifier class" as indicated by a {@code @IdClass} annotation. * * @see javax.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 javax.persistence.EmbeddedId */ AGGREGATED_COMPOSITE }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy