@Repeatable(NamedEntityGraphs.class)
@Target(TYPE)
@Retention(RUNTIME)
public @interface NamedEntityGraph
Defines a named entity graph. This annotation
must be applied to the root entity of the graph, and specifies the
limits of the graph of associated attributes and entities fetched when
an operation which retrieves an instance or instances of the root entity
is executed.
A reference to a named entity graph may be obtained by calling
EntityManager.getEntityGraph(String)
, and may be passed to
EntityManager.find(EntityGraph, Object, FindOption...)
.
- Since:
- 2.1
-
Optional Element Summary
Modifier and TypeOptional ElementDescription(Optional) A list of attributes of the entity that are included in this graph.boolean
(Optional) Includes all of the attributes of the annotated entity class as attribute nodes in the NamedEntityGraph without the need to explicitly list them.(Optional) The name used to identify the entity graph in calls toEntityManager.getEntityGraph(String)
.(Optional) A list of subgraphs that will add additional attributes for subclasses of the annotated entity class to the entity graph.(Optional) A list of subgraphs that are included in the entity graph.
-
Element Details
-
name
String name(Optional) The name used to identify the entity graph in calls toEntityManager.getEntityGraph(String)
. If no name is explicitly specified, the name defaults to the entity name of the annotated root entity. Entity graph names must be unique within the persistence unit.- Default:
""
-
attributeNodes
NamedAttributeNode[] attributeNodes(Optional) A list of attributes of the entity that are included in this graph.- Default:
{}
-
includeAllAttributes
boolean includeAllAttributes(Optional) Includes all of the attributes of the annotated entity class as attribute nodes in the NamedEntityGraph without the need to explicitly list them. Included attributes can still be fully specified by an attribute node referencing a subgraph.- Default:
false
-
subgraphs
NamedSubgraph[] subgraphs(Optional) A list of subgraphs that are included in the entity graph. These are referenced by name from NamedAttributeNode definitions.- Default:
{}
-
subclassSubgraphs
NamedSubgraph[] subclassSubgraphs(Optional) A list of subgraphs that will add additional attributes for subclasses of the annotated entity class to the entity graph. Specified attributes from superclasses are included in subclasses.- Default:
{}
-