【发布时间】:2021-05-22 07:36:59
【问题描述】:
DefaultRecordMapper 可以处理列表吗?
模型示例(确实使用了getter/setter):
class Head {
public Integer id;
public List<Position> positions;
...
}
class Position {
public Integer id;
public Integer headId;
...
}
我首先用一个简单的选择来尝试它:
dsl.select()
.from(HEAD)
.join(POSITION).onKey()
.fetchInto(Head.class);
我也尝试过使用嵌套语法,但它不起作用:
dsl.select(..., POSITION.ID.as("positions.id"), ...)
.from(HEAD)
.join(POSITION).onKey()
.fetchInto(Head.class);
列表永远不会被初始化。我不确定我是否做错了什么。 DefaultRecordMapper 可以做到这一点吗?
我知道 jOOQ 提供了像“intoGroups”这样的功能。 然而,这意味着我们公司不能使用我们现有的模型。
或者在这种情况下是否需要像 ModelMapper 这样的第三方库?
提前非常感谢!
【问题讨论】:
-
你使用的是什么 SQL 方言?
-
我没有定义它。所以它应该是默认的(独立于数据库)。