使用for循环将多个字符串添加到SQL数据库中

时间:2013-10-25 18:43:32

标签: java sql jdbc for-loop insert

我正在从HTML页面中抓取一些分数,然后将它们输入到SQL数据库中。 使用Jsoup将分数解析为ArrayList。从这里我将ArrayList转换为String,以允许将其解析为db中的VARCHAR字段。虽然我似乎无法弄清楚如何编辑for循环,但我必须一次插入所有值。

这是我目前的代码:

  Document doc = Jsoup.connect(URL).timeout(5000).get();

    for (Element table : doc.select("table:first-of-type")) //selects first table
    {
        for (Element row : table.select("tr:gt(0)")) { //selects first table cell
            Elements tds = row.select("td");//selects row

            List1.add(tds.get(0).text());
            List2.add(tds.get(1).text());
            List3.add(tds.get(2).text());
        }
    }
    PreparedStatement stmt = conn.prepareStatement("INSERT INTO Scores (Home, Score, Away) VALUES (?,?,?)");

    String[] List1str = new String[List1.size()];
    List1str = List1.toArray(List1str);

    for (String s : List1str) {
        stmt.setString(1, s);
        stmt.setString(2, "test");
        stmt.setString(3, "test");
        stmt.executeUpdate();

    }

1 个答案:

答案 0 :(得分:-1)

for (int i = 0; i < dtm.getRowCount(); i++) {
    for (int j = 0; j < dtm.getColumnCount(); j++) {
        Object o = dtm.getValueAt(i, j);
        System.out.println("object from table is  : " + o);
        pst.setString(j + 1, (String) o);
    }
    pst.executeUpdate();
    pst.clearParameters();
}