我有SQL查询,导致多列。我想执行此查询并将结果输入ArrayList<>
而不是ResultSet
。
我的列定义是
public class Record{
private String FileName;
private String FileID;
private String Loan;
private String Page;
}
查询是:
String query = "SELECT FileName, FileID, loanNumnber, PageNumber FROM table";
ResultSet rs = stmt.executeQuery(query);
我想在 recordData 对象中查询结果。
ArrayList<Record> recordData = new ArrayList<Record>;
请建议如何使用正确的映射直接填充arraylist。
答案 0 :(得分:3)
如果您想自己实施,请使用以下代码段。它会将结果集转换为Record
个对象,并将其添加到ArrayList
。
Record record;
while(rs.next()){
record = new record();
String fileName = rs.getString("FileName");
String fileID = rs.getString("FileID");
String loanNumnber = rs.getString("loanNumnber");
String pageNumber = rs.getString("PageNumber");
record.setFileName(fileName);
record.setFileID(fileID);
record.setLoan(loanNumnber);
record.setPage(pageNumber);
recordData.add(record)
}
rs.close();
否则,如果你想使用任何第三方框架,那么有许多选项,如Hibernate,iBatis等。
答案 1 :(得分:0)
您可以使用mybatis。 请使用ORM。
答案 2 :(得分:0)
你应该像Hibernate一样使用OR mapper。感谢POJO课程,你可以做你想做的。 一些读物:
http://www.tutorialspoint.com/hibernate/hibernate_examples.htm
答案 3 :(得分:0)
在代码中的这一行添加括号“()”,使其如下所示:
<强> ArrayList<Record> recordData = new ArrayList<Record>();
强>