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

Posted

技术标签:

【中文标题】如何将 MySQL 查询结果放入 ArrayList<object>【英文标题】:How to get the MySQL query results into a ArrayList<object> 【发布时间】:2016-05-05 17:07:21 【问题描述】:

我有导致多列的 SQL 查询。我想执行这个查询并将结果放入我的ArrayList&lt;&gt; 而不是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>;

请建议如何使用正确的映射直接填充数组列表。

【问题讨论】:

使用像 Hibernate、JDO 等 OR 映射器或自己做。 【参考方案1】:

如果您想自己实现,请使用以下代码 sn-p。它将结果集转换为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 等。

【讨论】:

【参考方案2】:

你可以使用mybatis。 请使用 ORM。

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

【讨论】:

【参考方案3】:

你应该使用像 Hibernate 这样的 OR 映射器。感谢 POJO 课程,您可以随心所欲。 一些读数:

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

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

【讨论】:

【参考方案4】:

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

ArrayList&lt;Record&gt; recordData = new ArrayList&lt;Record&gt;();

【讨论】:

以上是关于如何将 MySQL 查询结果放入 ArrayList<object>的主要内容,如果未能解决你的问题,请参考以下文章

如何将SQL查询结果存放到数组里面

sql server将查询结果放入新表?

Python 中的 Bigquery:如何将查询结果放入表中?

sql查询出来的结果,如何放入数组中

c#如何将查询后的结果放入list中

如何将执行查询的结果放入 ViewData 并传递给视图