首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >对于jooq,有没有一种通用的“按id选择”的方法?

对于jooq,有没有一种通用的“按id选择”的方法?
EN

Stack Overflow用户
提问于 2019-10-10 11:29:06
回答 1查看 285关注 0票数 2

我对使用jooq非常陌生,我正在尝试实现我们Java人员喜欢在DAOs/存储库中使用的常见CRUD操作。我有以下代码,用于通过id选择记录:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public class JooqRepository<ID, E extends BaseObject<ID>, T extends Table<R>, R extends Record> {
...
  private final T table; // would be coming from constructor to concrete reference in the generated classes
...

  protected Optional<E> findById(ID id) {
    final TableField<R, ID> idField = (TableField<R, ID>) table.getIdentity().getField();
    return dsl.fetchOptional(table, idField.eq(id)).map(toEntity()); // conversion method omitted here
  }
...
}

我的问题是,首先,这种方法是否适用于所有类型的表/记录,或者只适用于使用标识/自动增量的表/记录?

如果我使用的DBMS没有此功能(例如Oracle),该怎么办?

如果一个表有一个组合键怎么办?

最后:是否建议以这种方式使用jooq,或者我们是否应该显式地为每个表创建专用查询?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-10-11 06:49:14

虽然可以使用jOOQ作为Spring仓库实现,但您也可以只使用jOOQ的开箱即用的DAO support,它的工作方式与此类似。主要不同之处在于DDD是不固执的辅助工具,它们不会强制jOOQ作为建模范例,它们只是简化了每个表上最常见的CRUD操作。

您可以将生成的DAO子类化,以便添加更多功能,并将它们注入到您的服务中,如Spring的存储库。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58321865

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文