我使用jOOQ和Postgreql从表中选择枚举值。
List<my.project.jooq.enums.Color> colors =
dsl.selectDistinct(TABLE.T_COLOR.as("color"))
.from(TABLE).fetch()
.into(my.project.jooq.enums.Color.class);
不管怎样,我得到了一个例外:
org.jooq.exception.MappingException: No matching constructor found on type class my.project.jooq.enums.Color for record org.jooq.impl.DefaultRecordMapper@7c66447f
我看到fetch()
将返回结果
如何获取枚举值?
从jOOQ 3.7开始,这还没有现成的支持,但将在jOOQ 3.8中得到支持(参见#5154)。
不过,您可以通过以下方式轻松地将字符串列映射到您的Enum
类型
List<my.project.jooq.enums.Color> colors =
dsl.selectDistinct(TABLE.T_COLOR)
.from(TABLE)
.fetch()
.map(rec -> my.project.jooq.enums.Color.valueOf(rec.getValue(TABLE.T_COLOR)));
如果您的my.project.jooq.enums.Color
是由jOOQ从PostgreSQLenum
数据类型生成的,您不需要专门映射任何东西,jOOQ会自动为您这样做:
List<my.project.jooq.enums.Color> colors =
dsl.selectDistinct(TABLE.T_COLOR)
.from(TABLE)
.fetch(TABLE.T_COLOR);
问题内容: 我在开关情况下使用枚举,但出现以下错误: NEWS FEED在FragmentName中不是常量 这是我的枚举字符串常量, 当我打电话 即使在传递的值相同的情况下,它也会在changeTitle函数中创建异常,因此,如果我已尽力解决此问题,将对您有所帮助。 问题答案: 将此代码添加到您的枚举 现在代替使用
我想在SQL中执行以下操作: 在jOOQ中,我将subQ存储到Select中 我的问题是,如何从subQ中获取maxCol列,并在join中使用它?我的连接是这样的: 我在()上出错 类型字段中的方法eq(字符串)不适用于参数(字段) 我该怎么办?
我正在尝试JOOQ,并试图使用连接语句从3个表(作者,书籍和文章)中进行选择。ERD如下: 我的问题如下: 我也有一个原型对象如下: (或任何其他pojo)将所有实体(作者详细信息图书列表文章列表)保存到一个对象中。我的问题是,是否有某种方法可以使用JOOQ将所有三个表映射到一个对象中。 提前谢谢。
描述:描述一个相关属性的集合。 Syntax(语法) @enum [<type>] Overview(概述) @enum标签描述一个静态属性值的全部相同的集合。枚举类似一个属性的集合,除了枚举自己的描述注释之外,属性都记录在容器内部的注释中。通常这种标签是与@ReadOnly结合使用,作为一个枚举通常表示常量的集合。 Examples(例子) 这个例子表明如何记录一个对象,这个对象有三个可能的状态
Enums represent a possible set of values for a field. For example, the Issue object has a field called state. The state of an issue may be OPEN or CLOSED. For more information, see the GraphQL spec.
问题内容: 有一个字段’noticeBy’枚举(’email’,’mobile’,’all’,’auto’,’nothing’)NOT NULL默认’auto’。众所周知,按ENUM字段排序相对于其索引执行。但是,如何通过其值进行排序? 问题答案: 如“ 排序”中所述: 值根据其索引号排序,索引号取决于列规范中列出的枚举成员的顺序。例如,在for 之前排序。空字符串排在非空字符串之前,值排在所有其