javax.persistence.MapKeyEnumerated - JPA annotation
javax.persistence
Annotation MapKeyEnumerated
- Target:
- Fields (including property get methods)
Specifies the enum type for a map key whose basic type is an enumerated type. The
MapKeyEnumerated
annotation can be applied to an element collection or relationship of type
java.util.Map
, in conjunction with the
ElementCollection
,
OneToMany
, or
ManyToMany
annotation. If the enumerated type is not specified or the
MapKeyEnumerated
annotation is not used, the enumerated type is assumed to be
ORDINAL
.
Example:
public enum ProjectStatus {COMPLETE, DELAYED, CANCELLED, IN_PROGRESS} public enum SalaryRate {JUNIOR, SENIOR, MANAGER, EXECUTIVE} @Entity public class Employee { @ManyToMany public Projects getProjects() {...} @OneToMany @MapKeyEnumerated(STRING) public Map getEmployees() {...} ... }
- Since:
- JPA 2.0
- See Also:
-
ElementCollection
-
OneToMany
-
ManyToMany
This documentation page is derived (with some adjustments) from the open source JPA 2 RI (EclipseLink)
and is available under the terms of the Eclipse Public License, v. 1.0 and Eclipse Distribution License, v. 1.0.
and is available under the terms of the Eclipse Public License, v. 1.0 and Eclipse Distribution License, v. 1.0.
Object Relational Mapping (ORM) JPA 2 providers include Hibernate, EclipseLink, TopLink, OpenJPA and DataNucleus.
ObjectDB is not an ORM JPA implementation but an Object Database for Java with built in JPA 2 support.