java - Apache 卡宴 : Handling Postgresql enum types

标签 java postgresql orm enums apache-cayenne

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

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

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

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

最佳答案

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

关于java - Apache 卡宴 : Handling Postgresql enum types,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18777295/

相关文章:

java - 创建 JsonArray

orm - meteor :与 Mongoose 整合?

nhibernate - NHibernate入门的最佳方法是什么?

java - Spring依赖注入(inject)不适用于继承

java - @CachePut findAll() 后没有给出缓存结果

java - 在 Android 7 上显示 AlertDialog 时出现 WindowManager$BadTokenException

c# - 无法使用 PostgreSQL 配置 AspNet.Identity

sql - 获得 max_value 的 postgresql 序列

python - Postgresql报错语句太大

java - 如何获取Firebase用户数据