當前位置:首頁 » 編程語言 » java的jtable

java的jtable

發布時間: 2023-09-14 07:08:20

java中jatable連接資料庫步驟及其獲取數據方法

以下是一個小程序,參考下
import javax.swing.*;
import javax.swing.table.JTableHeader;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.*;

public class Test extends JFrame{
// 定義組件
private JScrollPane scpDemo;
private JTableHeader jth;
private JTable tabDemo;
private JButton btnShow;
// 構造方法
public Test(){
// 窗體的相關屬性的定義
super("JTable數據綁定示例");
this.setSize(330,400);
this.setLayout(null);
this.setLocation(100,50);
// 創建組件
this.scpDemo = new JScrollPane();
this.scpDemo.setBounds(10,50,300,270);
this.btnShow = new JButton("顯示數據");
this.btnShow.setBounds(10,10,300,30);
// 給按鈕注冊監聽
this.btnShow.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ae){
btnShow_ActionPerformed(ae);
}
});
// 將組件加入到窗體中
add(this.scpDemo);
add(this.btnShow);
// 顯示窗體
this.setVisible(true);
}
// 點擊按鈕時的事件處理
public void btnShow_ActionPerformed(ActionEvent ae){
// 以下是連接數據源和顯示數據的具體處理方法,請注意下
try{
// 獲得連接
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn = DriverManager.getConnection("jdbc:odbc:localServer","sa","");
// 建立查詢條件
String sql = "select * from localServer";
PreparedStatement pstm = conn.prepareStatement(sql);
// 執行查詢
ResultSet rs = pstm.executeQuery();
// 計算有多少條記錄
int count = 0;
while(rs.next()){
count++;
}
rs = pstm.executeQuery();
// 將查詢獲得的記錄數據,轉換成適合生成JTable的數據形式
Object[][] info = new Object[count][4];
count = 0;
while(rs.next()){
info[count][0] = Integer.valueOf( rs.getInt("id"));
info[count][1] = rs.getString("name");
info[count][2] = Integer.valueOf( rs.getInt("age") );
info[count][3] = rs.getString("sex");
count++;
}
// 定義表頭
String[] title = {"學號","姓名","年齡","性別"};
// 創建JTable
this.tabDemo = new JTable(info,title);
// 顯示表頭
this.jth = this.tabDemo.getTableHeader();
// 將JTable加入到帶滾動條的面板中
this.scpDemo.getViewport().add(tabDemo);
}catch(ClassNotFoundException cnfe){
JOptionPane.showMessageDialog(null,"數據源錯誤","錯誤",JOptionPane.ERROR_MESSAGE);
}catch(SQLException sqle){
JOptionPane.showMessageDialog(null,"數據操作錯誤","錯誤",JOptionPane.ERROR_MESSAGE);
}
}

public static void main(String[] args){
new Test();
}
}

熱點內容
同等配置的聯想和戴爾哪個更好 發布:2025-07-02 09:02:33 瀏覽:125
華為如何查詢以前設置過的密碼 發布:2025-07-02 09:02:28 瀏覽:183
c語言地圖 發布:2025-07-02 09:00:14 瀏覽:490
計算機的主存儲器是指軟盤的容量 發布:2025-07-02 08:53:49 瀏覽:238
為什麼都說歐曼價格高配置低 發布:2025-07-02 08:53:00 瀏覽:548
300人用什麼電腦伺服器好 發布:2025-07-02 08:47:42 瀏覽:903
52好壓縮 發布:2025-07-02 08:24:16 瀏覽:247
javahttp發送http請求 發布:2025-07-02 08:17:05 瀏覽:227
美國編譯的青少經典書第三輯 發布:2025-07-02 08:16:59 瀏覽:950
阿里雲伺服器強制重啟 發布:2025-07-02 08:14:55 瀏覽:664