Java的資料庫應用
來源:互聯網
上載者:User
利用Java開發資料庫應用系統時,經常需要在使用者介面上顯示查詢結果。由於SUN公司提供的JDK1.x開發套件不是可視化的整合式開發環境(IDE),不能象Delphi、VB那樣方便地把查詢結果在DBGrid等表格中顯示出來。因此,只能靠自己編寫代碼來實現。
在實際應用中,我們可以利用Vector、JTable、AbstractTableModel等三個類較好地解決這一問題。以下,詳細介紹一下實現方法。
一、 類Vector、類JTable及類AbstractTableModel簡介:
1、 類Vector:
類Vector是Java的曆史集合類,隸屬於java.util包。它封裝了異構鏈表和數組雜合體,具有以下兩個特點:
* 向量是異構的,不要求每個元素的類型相同,向量中可以混合多種物件類型;
* 向量是數組雜合體,因為它們可以在增加元素時動態增大。
其異構性正好符合資料庫記錄中屬性類型不一的特點,而其動態性也正好符合資料庫查詢時,結果集記錄個數不定的特點。
類Vector定義如下:
public class Vector extends AbstractList
implements List , Cloneable , Serializable{…}
實現了向量成員的尋找、新增、刪除等方法。如:add(Object obj)可方便地加入一個對象;get(int index)可方便地得到向量中的一個對象;remove(Object obj)則可方便地刪除向量中一個對象。
2、 類JTable:
JTable組件是Swing組件中比較複雜的小件,隸屬於javax.swing包,它能以二維表的形式顯示資料。類JTable定義如下:
public class JTable extends JComponent
implements TableModelListener, Scrollable, TableColumnModelListener,
ListSelectionListener, CellEditorListener, Accessible{…}
類JTable在顯示資料時具有以下特點:
* 可定製性:可以定製資料的顯示方式和編輯狀態;
* 異構性:可以顯示不同類型的資料對象,甚至包括顏色、表徵圖等複雜物件;
* 簡便性:可以以預設方式輕鬆地建立起一個二維表。
其可定製性可滿足不同使用者和場合的要求,異構性也正好符合資料庫訪問結果集中屬性類型不一的特點。類JTable提供了極為豐富的二維表格操作方法,如設定編輯狀態、顯示方式、選擇行列等,在此不一一贅述。
使用類JTable顯示資料之前,必鬚根據情況產生定製模型、單元繪製器或單元編輯器。類AbstractListModel用來定製使用者自己的資料模型,這個類在後面要介紹。TableCellRenderer介面用來定製單元繪製器,TableCellEditor介面用來定製單元編輯器,這兩個介面主要用於顏色對象的處理上,在樣本中沒有用到,不做過多說明。