У меня есть перечисление с пользовательскими целочисленными значениями, сопоставленными с каждым перечислением, потому что порядки могут часто меняться, поэтому я не могу положиться на порядковый номер. Я вижу похожие вопросы, заданные c для JPA / Hibernate (у меня именно такой сценарий: Отображение enum в JPA с фиксированными значениями? ), но в моем проекте мы используем только шаблоны JDB C поэтому нет интеграции JPA / Hibernate.
Я могу создать RowMapper
и установить перечисление вручную, но я хотел избежать этого, поскольку поведение по умолчанию для всех остальных столбцов является правильным. Я смог записать значение из enum, переопределив setTypeValue
в классе enum, но я не уверен, что будет эквивалентно для этого при чтении.
Пример (из скопированного вопроса):
public enum Right {
READ(100), WRITE(200), EDITOR (300);
private int value;
Right(int value) { this.value = value; }
public int getValue() { return value; }
};
Я хочу иметь возможность использовать getValue () для установки значения в базе данных и его считывания и сопоставления с перечислением (например, «200» в БД необходимо сопоставить с Right.WRITE