@Target(value={METHOD,FIELD})
@Retention(value=RUNTIME)
public @interface Enumerated
Определяет, что персистентное свойство или поле должны быть сохранены как перечислимый тип. Enumerated аннотация может использоваться в соединении с Basic аннотация, или в соединении с ElementCollection аннотация, когда значение набора элемента имеет основной тип. Если перечислимый тип не определяется или Enumerated аннотация не используется, EnumType значение, как предполагается, 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() {...}
...
}