2017-01-02 5 views
2

javafxではいくつかのボタンとTableViewをいくつかの列に作成しました。 ボタンをクリックすると、製品がTableViewの列に追加されます。これまでは に問題はありません。TableViewからデータを取得し、データベースに挿入

Productクラスを作成し、これを使用してpID, pName, pQty, pPriceの商品オブジェクトを作成しました。 例:そう

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

私はそれが次の行にこの製品を追加し、製品のボタンをクリックしたときに。

私は、私が作成したデータベースにTableView内のすべてのこれらの行を追加します:ここで

は、私が直面している問題です。

これらのオブジェクトを1つずつTableViewから取得してデータベースに挿入する方法はありますか?

ObservableListからデータベースを設定する方法はありますか?

+1

'tableView.getItems()'はどうですか? ObservableListを返します。これは、JDBCを使用してデータを1つずつ繰り返してポストすることができます。 –

+1

いいえ、データベースへのあらゆるタイプの接続のためにこれを行う方法はありません...それは、テーブルに行の束を挿入するのに十分なほど単純なはずです... – fabian

答えて

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(); 

      } 

これをループ内に配置しました。この方法で、各オブジェクトメンバーを繰り返し処理できました。

関連する問題