【发布时间】:2019-02-15 20:05:19
【问题描述】:
昨天我发布了一个关于从数据库中检索数据并对其进行迭代的问题。有人帮助我指出了 JDBI 并远离了原始数据类型。
注意事项:我首先是一名测试人员,并且刚刚开始探索 JDBI 以进行一些自动化测试。
所以,我认为我已经改进了以前的解决方案,但我只是在努力实现迭代我的数据集的最佳方法,现在它已被检索。
这是我返回数据集的方法:
public List<FlightDataBean> lastFlightBookedResults(String supplierCode, String channel) {
String sqlQuery = getData(supplierCode, channel);
List<FlightDataBean> dataSet = jdbi.withHandle(handle ->
handle.createQuery(sqlQuery)
.mapToBean(FlightDataBean.class)
.list());
return dataSet;
}
这是我的 Bean 类:
public class FlightDataBean {
private String startDate;
private String origin;
private String destination;
public FlightDataBean(){
}
public FlightDataBean(String startDate, String origin, String destination) {
this.startDate = startDate;
this.origin = origin;
this.destination = destination;
}
public String getStartDate() {
return startDate;
}
public void setStartDate(String startDate) {
this.startDate = startDate;
}
public String getOrigin() {
return origin;
}
public void setOrigin(String origin) {
this.origin = origin;
}
public String getDestination() {
return destination;
}
public void setDestination(String destination) {
this.destination = destination;
}
}
这里是一个返回数据集的例子,30行3列:
显然我可以通过这样做来检索单个结果:
List<FlightDataBean> resultSet;
resultSet = getFlightData(syndicatorName);
String startDate = (resultSet.get(0).getStartDate());
String origin = String.valueOf((resultSet.get(1)).getOrigin());
String destination = String.valueOf(resultSet.get(2).getDestination());
我只需要一个关于迭代所有 30 个的最佳/最有效/最安全方法的指针,因为我将结果用作搜索测试数据,并且需要在使用数据集的进一步方法中依次使用每个结果直到它在网站上获得结果。
我正在继续学习 JDBI,但同时任何帮助都会很棒
【问题讨论】:
标签: java iterator iterable jdbi