Java 教程:Java 数据库编程中查询结果的表格式输
出
利用 Java 开发数据库应用系统时,经常需要在用户界面上显示查询结果。由于 SUN 公司
提供的 JDK1.x 开发工具包不是可视化的集成开发环境(IDE),不能象 Delphi、VB 那样方便
地把查询结果在 DBGrid 等表格中显示出来。因此,只能靠自己编写代码来实现。
在实际应用中,我们可以利用 Vector、JTable、AbstractTableModel 等三个类较好地解决这
一问题。以下,详细介绍一下实现方法。
一、类 Vector、类 JTable 及类 AbstractTableModel 简介:
1、类 Vector:
类 Vector 是 Java 的历史集合类,隶属于 java.util 包。它包装了异构链表和数组杂合体,
具有以下两个特点:
(1)向量是异构的,不要求每个元素的类型相同,向量中可以混合多种对象类型;
(2)向量是数组杂合体,因为它们可以在增加元素时动态增大。
其异构性正好符合数据库记录中属性类型不一的特点,而其动态性也正好符合数据库
查询时,结果集记录个数不定的特点。
类 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 在显示数据时具有以下特点:
(1)可定制性:可以定制数据的显示方式和编辑状态;
(2)异构性:可以显示不同类型的数据对象,甚至包括颜色、图标等复杂对象;
(3)简便性:可以以缺省方式轻松地建立起一个二维表。
其可定制性可满足不同用户和场合的要求,异构性也正好符合数据库访问结果集中属
性类型不一的特点。类 JTable 提供了极为丰富的二维表格操作方法,如设置编辑状态、显