Hibernate カスタム ユーザー タイプを使用して列挙型をテーブル varchar/char にマップしています。ここからカスタム ユーザー タイプ コードを使用しています ( https://community.jboss.org/wiki/Java5StringValuedEnumUserType )。アノテーションに従ってマッピングを実行しようとしていますが、機能していません。
@Transient
@Type(type = "data.model.base.StringValuedEnumType", parameters = {
@Parameter(name = "enumClass", value = "data.common.TypeEnum"),
@Parameter(name = "identifierMethod", value = "dbCode") })
private TypeEnum typeEnum;
TypeEnum コード:
public enum TypeEnum implements StringValuedEnum {
OFF("OFF", "O"),
ON("ON, "O"),
private String dbCode;
private String desc;
TypeEnum(String desc, String dbCode) {
this.desc=desc;
this.dbCode = dbCode;
}
@Override
public String dbCode() {
return dbCode;
}
public String desc() {
return desc;
}
}
注釈で何か間違ったことをしていると思いますが、それが何であるかを理解できません。誰かアイデアはありますか?