我的程序在乐队和 CD 乐队上查询 MySQL 数据库,并将查询作为结果集返回。我正在尝试将 CD 表查询的结果集存储到数组列表中,以便存储每张 CD 的标题和年份,然后通过 addCD(CD cd) 添加到当前乐队。我的 Band 类有一个 CD 对象数组列表,我的 CD 对象有一个字符串作为标题,int 表示年份。
问问题
1760 次
1 回答
1
您可以在单个 SQL 查询中从 CD 表中选择 TITLE 和 YEAR 值,如下所示。然后 YEAR 将在结果集的 index(2) 处可用。使用包装类Integer
将 YEAR 字符串转换为int
.
rs = st.executeQuery("SELECT TITLE, YEAR FROM CD WHERE BAND_ID = " + i + ";");
// notice the name change below
Band band = new Band(name); // or, call this "b" to avoid name conflict
// Get the title of each CD for the current band
while (rs.next()) {
band.addCD(
new CD(rs.getString(1), Integer.parseInt(rs.getString(2))); // int year;
}
// Add a new band to the arraylist
bandList.add(band); // Added "List" to the name
我冒昧地改了几个名字。基本上,调用一个波段列表,bandList
甚至bands
使变量的目的比调用它band
(单数)更清晰。
于 2013-05-28T21:37:16.813 回答