2

我有一个名为“foo”的数据库类型,定义如下:

CREATE TYPE foo AS ENUM('foo','bar','baz');

当我通过 Apache Cayenne Modeler 为我的表生成类时,我收到一条错误消息,指出该字段未定义。来一探究竟,没有为这个字段生成类型。

如何在 java 端实现 postgresql 枚举类型,以便 Cayenne 正确处理它们?

4

1 回答 1

1

虽然 Cayenne 在猜测枚举类型方面应该做得更好,但您可以自己轻松地解决这个问题。在 CayenneModeler 中,将 DbEntity 的列类型更改为 VARCHAR。在 ObjEntity 方面,您可以将其映射为字符串,或者您可以创建一个 Java 枚举以匹配您的数据库枚举,并映射到该枚举。

于 2013-09-13T18:05:07.717 回答