Java数据库查询结果的输出
### Java数据库查询结果的输出详解 #### 概述 本文主要介绍了如何利用Java技术结合Swing组件中的`JTable`来展示数据库查询的结果,并详细解释了`Vector`、`JTable`以及`AbstractTableModel`这三个类的应用场景及其实现细节。此外,还涉及到了与Sybase数据库的连接方法及具体的实现步骤。 #### 核心类介绍 1. **Vector类** - `Vector`是Java集合框架中的一个动态数组类,它可以存储多个相同类型的对象。 - 定义: ```java public class Vector extends AbstractList implements List, Cloneable, Serializable { … } ``` - `Vector`类的主要特点在于它的线程安全性,适用于多线程环境下的操作。 2. **JTable组件** - `JTable`组件是Swing组件中用于展示二维表数据的一种组件。 - 定义: ```java public class JTable extends JComponent implements TableModelListener, Scrollable, TableColumnModelListener, ListSelectionListener, CellEditorListener, Accessible { … } ``` - 主要功能是提供了一个表格界面,能够展示来自不同来源的数据,如数据库查询结果等。 3. **AbstractTableModel类** - `AbstractTableModel`是Swing提供的一个抽象类,用作`JTable`的数据模型。 - 定义: ```java public abstract class AbstractTableModel extends Object implements TableModel, Serializable { … } ``` - 实现`TableModel`接口,主要用于定义数据模型的基本结构和数据获取方法。 #### 数据库连接与查询 - **数据库环境** - 本文采用的是Sybase数据库,数据库位于数据库服务器中,路径为:`D:\WORKER`,数据库名为:`worker.dbf`。 - 数据库包含如下字段: - Wno(职工号):`VARCHAR` - Wname(职工名):`VARCHAR` - Sex(性别):`VARCHAR` - Birthday(出生日期):`DATE` - Wage(工资):`FLOAT` - **连接方法** - 使用`java.sql`包中的`DriverManager`类来管理JDBC驱动程序,实现数据库连接。 - 具体连接代码示例: ```java driver="com.sybase.jdbc.SybDriver"; SybDriver sybdriver=(SybDriver) Class.forName(driver).newInstance(); DriverManager.registerDriver(sybdriver); user="sa"; password=""; url="jdbc:sybase:Tds:202.117.203.114:5000/WORKER"; SybConnection connection= (SybConnection)DriverManager.getConnection(url,user,password); ``` #### 查询结果展示 - **实现步骤** 1. **对象声明**: - `AbstractTableModel tm;`:声明`AbstractTableModel`对象。 - `JTable jg_table;`:声明`JTable`对象。 - `Vector vect;`:声明`Vector`对象。 - `JScrollPane jsp;`:声明滚动条对象。 - `String title[]={"职工号","职工名","性别","出生日期","工资"};`:定义表格列名。 2. **定制表格**: - 实现`AbstractTableModel`对象`tm`中的方法,如`getColumnCount()`、`getRowCount()`、`getValueAt(int row, int column)`等。 - 实例化`Vector`对象`vect`。 - 通过`JTable`创建表格并设置相关属性。 3. **显示查询结果**: - 连接数据库并执行查询语句。 - 循环遍历查询结果,将数据填充到`Vector`对象`vect`中。 - 更新表格内容,显示查询结果。 #### 补充示例代码 提供的部分代码展示了如何创建一个简单的`JTable`并进行基本的操作,如添加数据、删除数据等。这段代码有助于理解如何在实际项目中使用这些组件。 #### 总结 通过上述内容的学习,可以了解到如何利用Java语言结合Swing组件来实现数据库查询结果的有效展示。这对于开发基于Java的桌面应用程序非常有用,特别是涉及到数据展示和处理的场景。掌握这些知识对于提高应用程序的可用性和用户体验至关重要。
没有比这个更好的JTable例子了
2008-04-18 12:39
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Vector;
import javax.swing.DefaultCellEditor;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.AbstractTableModel;
import javax.swing.table.TableColumnModel;
/**
* JTable的实用小例子
*
* @author 五斗米 <如转载请保留作者和出处>
* @blog http://blog.csdn.net/mq612
*/
public class Test {
private JFrame frame = null;
private Table_Model model = null;
private JScrollPane s_pan = null;
private JButton button_1 = null, button_2 = null, button_3 = null;
private JPanel pane = null;
public Test() {
frame = new JFrame("JTableTest");
pane = new JPanel();
button_1 = new JButton("清除数据");
button_1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
removeData();
}
});
button_2 = new JButton("添加数据");
button_2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
addData();
}
});
button_3 = new JButton("保存数据");
button_3.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
saveData();
}
剩余6页未读,继续阅读
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
- 1
- 2
前往页