2012-12-29 66 views
0
private void bt_commit1ActionPerformed(java.awt.event.ActionEvent evt) {           
     DBUtil util = new DBUtil(); 
     try { 

      Connection con = util.getConnection(); 
      PreparedStatement stmt = con.prepareStatement("INSERT INTO dbo.bk_det(rm_id,bk_name,bk_branch) VALUES (?,?,?)"); 
      String rm = (tf_rm_id.getText().trim() == null || tf_rm_id.getText().equals("")) ? "0" : tf_rm_id.getText(); 
      String a = (txtbkname.getText().trim() == null || txtbkname.getText().equals("")) ? "UNKNOWN" : txtbkname.getText(); 
      String b = (txtbkbranch.getText().trim() == null || txtbkbranch.getText().equals("")) ? "UNKNOWN" : txtbkbranch.getText(); 

      stmt.setString(1, ""+(rm)); 
      stmt.setString(2, ""+(a)); 
      stmt.setString(3, ""+(b)); 

      stmt.execute(); 
      JOptionPane.showMessageDialog(null, "COMMITED SUCCESSFULLY!"); 
     } catch (Exception ex) { 
      JOptionPane.showMessageDialog(null, ex.getMessage()); 
      Logger.getLogger(Demo.class.getName()).log(Level.SEVERE, null, ex); 
     } 

我實際上想在不使用sql數據庫的情況下存儲表中的值。在這裏我正在使用sql語句連接到我的數據庫,但我想將我的java gui中的值存儲在netbeans中,而不是數據庫中的jtabel如何在jtable中沒有數據庫存儲值

+1

甲'JTable'用於顯示(和編輯)數據。如果您不希望從數據庫讀取數據,那麼數據應該從哪裏來? – jlordo

+0

JTable的是一個GUI部件 - 中的數據的可視化表示,不存儲數據的地方。 NetBeans是一個IDE - 開發工具,選擇哪一種對問題沒有關係,如果有一個。 – GreyBeardedGeek

+0

看[這裏](http://docs.oracle.com/javase/tutorial/uiswing/components/table.html)JTable中爲一個合理的詳細介紹。如前所述,「JTable不包含或緩存數據;它只是數據的視圖」 – Dukeling

回答

0

由於JTable是一個GUI組件,因此無法在其中存儲值。它只會渲染它們。一旦對該組件的每個引用都丟失,您就無法保存您的信息。

。另一方面,NetBeans的,它只是一個IDE,比如Eclipse或其他人。您可以在其編輯器上繪製一個JTable組件並啓動您的應用程序,但它不能完成存儲目的。

不過,如果你正在尋找的不是像MySQL和PostgreSQL或Oracle數據庫以外的存儲機制,你可以使用MySQLite或XML文件,命名一些。