【问题标题】:get the data from TableView and insert into database从 TableView 获取数据并插入数据库
【发布时间】:2017-05-16 05:07:28
【问题描述】:

在 javafx 中,我创建了一些按钮和一个带有一些列的 TableView。 当我单击按钮时,它会将产品添加到 TableView 列中。 到目前为止,这没有问题。

我创建了一个Product 类,并使用它创建了一个带有pID, pName, pQty, pPrice 的产品对象。 示例:

new Product(1, "Pen", 2, 3.50);
new Product(2, "notebook", 1, 5.00);

所以每当我点击产品按钮时,它都会在下一行添加该产品。

这是我面临的问题:

我想将TableView 中的所有这些行添加到我创建的数据库中。

有没有办法从TableView中一一获取所有这些对象并插入到数据库中?

或者有没有一种方法可以从ObservableList 填充数据库?

【问题讨论】:

  • tableView.getItems() 怎么样。它将返回一个 ObservableList,您可以使用 JDBC 逐一迭代和发布数据。
  • 不,没有任何方法可以为您对每种类型的数据库连接执行此操作...不过,将一堆行插入到表中应该很简单...

标签: database javafx tableview observablelist


【解决方案1】:

这是我的解决方案。 实际上我很愚蠢,因为我一直试图将所有这些数据插入另一个具有相同名称的数据库和表中。 所以,插入基本没有问题。带来不便敬请谅解。并感谢所有感兴趣的人。 另外,我将用于插入的代码放在这里。以防它对某人有用。

String query = "INSERT INTO Product (pID, pName, pQty, pPrice) VALUES (?,?,?,?)"; 
            pst = conn.prepareStatement(query);

            for(int i=0; i<data.size(); i++){

                 pst.setString(1, data.get(i).getRID().toString());
                 pst.setString(2, data.get(i).getRName());
                 pst.setString(3, data.get(i).getRQty().toString());
                 pst.setString(4, data.get(i).getRPrice().toString());


                 pst.execute();

            }

我已经把它放在了 for 循环中,这样我就可以迭代每个对象成员。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-02-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多