我正在使用 jOOQ 进行数据库查询,并且我遇到了这样的情况:我在
row()
查询中使用 select
方法映射字段,如下所示:
.select(
// Other fields...
.row(MyRecord).mapping(MyMapper::toDto)
// Other fields...
)
但是,由于我的查询中存在左连接,
MyRecord
对象的所有字段有时可能为空。如果左侧部分为 null,是否有办法避免映射,而只是为字段返回 null?
我知道我可以在映射器中使用 lambda 函数而不是方法引用,但我想知道是否有更方便的方法来处理这种情况。对于使用 jOOQ 选择查询中的
row()
方法处理映射中的空值的任何建议或最佳实践,我们将不胜感激。
也许有像
row(MyRecord, Predicate)
这样的方法,如果谓词为假,它可以返回null?或者其他干净的方法来避免在空值的情况下映射。
谢谢你。