【发布时间】:2017-07-26 07:33:42
【问题描述】:
尝试使用 JDBI ResultSetMapper API 构建 Country 对象,但是我有一个问题我不知道如何解决。
对于如下的结果集,它将地区(州/领地)表连接到国家/地区 (1 - 0..n)
@Override
public Country map(final int index, final ResultSet resultRow, final StatementContext ctx) throws SQLException {
final String countryIso3Code = resultRow.getString("iso3Code");
return Country.builder().name(resultRow.getString("name"))
.iso2Code(resultRow.getString("iso2Code"))
.iso3Code(resultRow.getString("iso3Code"))
.regions(....?)
.build();
}
如何让 ResultSetMapper 使用 JDBI 中相关区域的适当列表初始化一个 Country 对象
例如
美国 - (USA) - (US) - (PR, RI, WA)
目前返回的国家列表如下
英国 - GBR - GB -
美国 - 美国 - 美国 - 公关
美国 - 美国 - 美国 - RI
美国 - 美国 - 美国 - 西澳
波多黎各 - PRI - PR -
加拿大 - CAN - CA - AB
加拿大 - 加拿大 - 加利福尼亚州 - BC
【问题讨论】: