如何将MySQL查询结果导入ArrayList <object>

时间:2016-01-28 10:57:16

标签: java mysql sql arraylist resultset

我有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。

4 个答案:

答案 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。

https://en.wikipedia.org/wiki/Object-relational_mapping

答案 2 :(得分:0)

你应该像Hibernate一样使用OR mapper。感谢POJO课程,你可以做你想做的。 一些读物:

http://www.tutorialspoint.com/hibernate/hibernate_examples.htm

http://www.mkyong.com/tutorials/hibernate-tutorials/

答案 3 :(得分:0)

在代码中的这一行添加括号“()”,使其如下所示:

<强> ArrayList<Record> recordData = new ArrayList<Record>();