实际上,我们正在使用fetchInto()将结果转换为对象列表。
例如:
Employee
pojo匹配数据库表为Employee。
List<Employee> employeeList = sql.select(Tables.Employee)
.from(Tables.EMPLOYEE).fetchInto(Employee.class);
类似地,我们如何转换使用连接获取的记录?
例如:
客户
pojo匹配数据库表为客户。
。员工
pojo匹配数据库表为员工
sql.select(<<IWantAllFields>>).from(Tables.CUSTOMER)
.join(Tables.EMPLOYEE)
.on(Tables.EMPLOYEE.ID.equal(Tables.CUSTOMER.EMPLOYEE_ID))
.fetchInto(?);
要从连接的表源中选择所有字段,只需选择“无”:
Result<Record> result =
sql.select().from(Tables.CUSTOMER)
.join(Tables.EMPLOYEE)
.on(...)
.fetch();
然后,jOOQ将内省已知的表源,并为您生成所有列引用。创建POJO关系的一种方法是使用各种结果之一。intoGroups()方法。例如。:
Map<Integer, List<Customer>> map =
result.intoGroups(CUSTOMER.EMPLOYEE_ID, Customer.class);
这将生成<代码>列表的映射
另一方面:与调用默认记录映射器的任何映射操作一样,当您的JOIN操作生成两倍于相同列名(例如客户ID和员工ID)时,映射可能无法按预期工作,因为默认记录映射器不知道特定列来自哪个表。
对于更复杂的映射,您可能应该实现自己的RecordMapperProvider
我已经看到,当我们使用或时,JOOQ可以自动返回POJO 但是有可能将复杂查询的结果转换成多个POJO吗? 我测试了方法,它工作得很好。但我没有支持对象。
主要内容:JSF自定义转换器实例我们可以在JSF中创建自己的自定义转换器。 以下列表是我们可以在JSF中创建自定义转换器的步骤。 通过实现接口创建一个转换器类。 实现上述接口的和方法。 使用注解为自定义转换器分配唯一的ID。 JSF自定义转换器实例 打开 NetBeans IDE 创建一个Web工程:CustomConverter,其目录结构如下所示 - 创建以下文件代码,文件:index.xhtml 的代码内容如下所示 - 文
I'v开始寻找很好的解决方案,如何使用Spring CassandraOperations很好地持久化实体。问题的出现是因为我的实体中的某些字段不支持cassandra,例如joda DateTime。 解决方法是在java类型的同一实体中有其他字段。util。Date而不是joda DateTime,用@Transient标记未要求的字段。但这并不干净,所以我开始寻找自动自定义转换。 目前,sp
改变json输出策略 默认使用阿里的fastjson进行json输出 JSON.toJSONString(obj) 如果要更换输出策略,操作方式如下: @Override protected void initApiConfig(ApiConfig apiConfig) { ... // 自定义json格式输出,将null字符串变成"" apiConfig.setJson
网关默认对业务结果进行合并,然后返回统一的格式。 针对alipay.story.find接口,微服务端返回结果如下: { "name": "白雪公主", "id": 1, "gmtCreate": 1554193987378 } 网关合并后,最终结果如下 { "alipay_story_find_response": { "msg": "Succe
我们定义了一个testng结果侦听器,它帮助我们将testng.xml中定义的每个测试用例的测试结果发送到一个内部工具,如下所示: } 然后我们将这个侦听器集成到其他项目的testng xml文件中,例如: 它按照设计工作:一旦测试套件完成,测试结果将上传到内部工具。 现在我们有一个要求,在一个项目中,testng.xml中的一个测试用例与内部工具中的3个测试用例相关,这意味着对于testng.x