Category Hibernateモデルがあります:
@Entity
@Table(name = "category")
public class Category {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
@Column(name = "id")
private long id;
@Column(name = "type")
private String type;
タイプ文字列フィールドがあります。また、カテゴリのタイプを表すJava enumを持っています:
public enum CategoryType {
INCOME, OUTCOME;
}
文字列型の代わりに使用したいと思います。 SQLは、CategoryIncome
またはCategoryOutcome
の2つの異なる値をvarcharパラメーターで受け入れます。 Categoryモデルクラスに列挙型変数を受け入れて、hibernateから要求されたときに文字列になんらかの方法でマッピングするようにします。
出来ますか?
はい、可能です。そのはず:
@Enumerated(EnumType.STRING)
@Column(name = "category_type")
private CategoryType categoryType;