0
Допустимо ли иметь перечисления, определенные как константы в объектах спящего режима и использовать их через код?Определить перечисления в объектах Hibernate как константную строку
@Entity
@Table(name = "table", schema = "", catalog = "")
public class Table {
@Transient
public static final String STATUS_PENDING = "PENDING";
@Transient
public static final String STATUS_ACCEPTED = "ACCEPTED";
@Transient
public static final String STATUS_REJECTED = "REJECTED";
private String status;
@Basic
@Column(name = "status", nullable = false, insertable = true, updatable = true, length = 8)
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
}
И тогда я могу их использовать:
if(status.equals(Table.STATUS_PENDING) {
entityObject.setStatus(Table.STATUS_PENDING);
}
Конечно, я могу определить класс перечислимую и использовать его, но что об этом подходе?
Почему нет? Я не вижу никаких ограничений для этого ... – Andremoniy
Не имеет никакого отношения к вашему вопросу, но '@ Transient' не требуется для статических полей. –
JPA @Transient annotation используется для указания того, что поле не должно сохраняться в базе данных. Так что это очень связано с вопросом. –