Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: REQUIRED | OPTIONAL | DETAIL: ELEMENT

## javax.persistence
Annotation Type MapKeyEnumerated

    @Target(value={METHOD,FIELD})
    @Retention(value=RUNTIME)
    public @interface MapKeyEnumerated

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<ProjectStatus, Project> getProjects() {...}

           @OneToMany
           @MapKeyEnumerated(STRING)
           public Map<SalaryRate, Employee> getEmployees() {...}
           ...
       }

Since:
  Java Persistence 2.0
See Also:
  `ElementCollection`, `OneToMany`, `ManyToMany`

Optional Element Summary
`EnumType` | `value` (Optional) The type used in mapping a map key enum type.

### value

    public abstract EnumType value

  (Optional) The type used in mapping a map key enum type.

  Default:
    javax.persistence.EnumType.ORDINAL

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: REQUIRED | OPTIONAL | DETAIL: ELEMENT