private void populateJlist(){
try
{
Connection connection = newConnection.createConnection();
Statement newStat = connection.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);
ResultSet res = newStat.executeQuery("SELECT AccName FROM AccList");
String data = "";
while (res.next()){
data += res.getString("AccName") + " ";
}
String acclist[] = data.split(" ");
AccountList = new JList(acclist);
newStat.close();
connection.close();
}
catch(SQLException e){
System.err.println("SQLException: " + e.getMessage());
}
}
应该做什么 - 该方法将从 AccList 表中查询 DB AccName 列并获取所有帐户名称并将它们插入 Jlist
我需要什么帮助 - 我需要帮助实现 Jlist,该 Jlist 将填充数据库列中的字段。
我尝试通过在线搜索帮助,最接近的解决方案就是我上面设法做的事情。
我了解到有两种可能的方法
结果集 -> 数组 -> Jlist 结果集 -> vector -> Jlist
但是我也不知道如何进行这些转换。我想说我是一个JAVA新手。任何详细的帮助表示赞赏。
最佳答案
正如你所说,使用数组或 vector 会比你的分割解决方案更干净、更容易。就我个人而言,我建议使用 Vector。基本上,您想要创建一个空 vector ,迭代结果集,通过 Vector.add(Object o)
将每个值添加到 vector 中。方法,然后使用 vector 在循环外部创建 jlist。像这样的东西(警告:未经测试)
Vector<String> temp = new Vector<String>();
while (res.next()) {
temp.add(res.getString("AccName"));
}
Jlist acctList = new Jlist(temp);
关于JAVA - 如何在查询 MS Access DB 后使用 ResultSet 的内容填充 JList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5304388/