gpt4 book ai didi

java - 3.9.2如何使用Jooq映射器

转载 作者:太空宇宙 更新时间:2023-11-04 11:22:34 24 4
gpt4 key购买 nike

我想使用系统提供的mapper,如何使用?或者你如何实现一个?

例如:

public List<com.chunfytseng.microedu.jooq.tables.pojos.SysResources> findResourceByUserId(Long value) {
using(configuration()).
select(SysRoleResources.SYS_ROLE_RESOURCES.ROLE_ID,
SysRoleResources.SYS_ROLE_RESOURCES.RESOURCES_ID,
SysRoleResources.SYS_ROLE_RESOURCES.PERMS)
.from(SysRoleResources.SYS_ROLE_RESOURCES)
.leftSemiJoin(SysUserRole.SYS_USER_ROLE)
.on(SysRoleResources.SYS_ROLE_RESOURCES.ROLE_ID.eq(SysUserRole.SYS_USER_ROLE.ROLE_ID).
and(SysUserRole.SYS_USER_ROLE.USER_ID.equal(value)))
.fetch().map(mapper());
}

最佳答案

一个RecordMapper可以很容易地实现如下:

Java 8 风格

fetch().map(record -> {
SysResources result = new SysResources();
result.setRoleId(record.get(SYS_ROLE_RESOURCS.ROLE_ID));
result.setResourcesId(record.get(SYS_ROLE_RESOURCS.RESOURCES_ID));
result.setPerms(record.get(SYS_ROLE_RESOURCS.PERMS));
return result;
});

Java 7 及更早版本:

fetch().map(new RecordMapper<Record, SysResources>() {
@Override
public SysResources map(Record record) {
SysResources result = new SysResources();
result.setRoleId(record.get(SYS_ROLE_RESOURCS.ROLE_ID));
result.setResourcesId(record.get(SYS_ROLE_RESOURCS.RESOURCES_ID));
result.setPerms(record.get(SYS_ROLE_RESOURCS.PERMS));
return result;
}
});

关于java - 3.9.2如何使用Jooq映射器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44750068/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com