1
我有一個簡單的對象名爲Group
其中包含一個GroupType
枚舉。DataTypeException與Jooq newRecord和一個枚舉
public enum GroupType {
PRIMARY,
SECONDARY
}
我建立一個新的Group
並保存
Group group = new Group();
group.setName(PRIMARY.name());
group.setType(PRIMARY);
Group g = save();
save
開始了與
R record = (R) dsl.newRecord(Groups.GROUPS, group);
這行代碼是拋出
Caused by: org.jooq.exception.DataTypeException: Cannot convert from PRIMARY (class com.domain.entities.support.GroupType) to class com.domain.jooq.generated.enums.GroupType
at org.jooq.tools.Convert$ConvertAll.fail(Convert.java:1113)
at org.jooq.tools.Convert$ConvertAll.from(Convert.java:1002)
at org.jooq.tools.Convert.convert0(Convert.java:316)
at org.jooq.tools.Convert.convert(Convert.java:308)
at org.jooq.tools.Convert.convert(Convert.java:380)
at org.jooq.impl.DefaultDataType.convert(DefaultDataType.java:698)
at org.jooq.impl.Tools.setValue(Tools.java:1975)
at org.jooq.impl.AbstractRecord.from(AbstractRecord.java:829)
如何枚舉工作與newRecord
?
您使用的數據庫是?你從數據庫中生成枚舉類嗎? –
使用Postgres 9.5。是的,我從數據庫中生成了枚舉類。基本上,我最終得到了一個像上面那樣的GroupType枚舉,然後是一個Jooq生成的GroupType(同名,不同的包)。我沒有什麼特別的地方在我的pom.xml中定義了生成的配置。只是'java.time'的一些自定義類型。這是正確的方法還是需要枚舉? –