@Target(value={METHOD,FIELD})
@Retention(value=RUNTIME)
public @interface Enumerated
Specifies that a persistent property or field should be persisted
as a enumerated type. The Enumerated annotation may
be used in conjunction with the Basic annotation, or in
conjunction with the ElementCollection annotation when the
element collection value is of basic type. If the enumerated type
is not specified or the Enumerated annotation is not
used, the EnumType value is assumed to be ORDINAL.
Example:
public enum EmployeeStatus {FULL_TIME, PART_TIME, CONTRACT}
public enum SalaryRate {JUNIOR, SENIOR, MANAGER, EXECUTIVE}
@Entity public class Employee {
public EmployeeStatus getStatus() {...}
...
@Enumerated(STRING)
public SalaryRate getPayScale() {...}
...
}