DbModel.java
package com.qysoft.system.jtable;
import javax.swing.*; import javax.swing.event.*; import javax.swing.text.*; import java.awt.*; import java.awt.event.*; import java.util.*; import java.text.*; import java.beans.*; import java.sql.*; public class DbModel extends javax.swing.table.AbstractTableModel{ ??? private Connection conn=null; ??? private java.sql.Statement stmt=null; ??? private ResultSet rs=null; ??? public DbModel(String sql) { ??????? try { ??????????? Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); ??????????? String URL = "jdbc:sqlserver://localhost:1433;DatabaseName=test"; ??????????? String USER = "sa"; // 根据你自己设置的数据库连接用户进行设置 ??????????? String PASSWORD = "000000"; // 根据你自己设置的数据库连接密码进行设置 ??????????? conn = DriverManager.getConnection(URL,USER,PASSWORD); ??????????? stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ??????????????????????????????????????? ResultSet.CONCUR_READ_ONLY); ??????????? rs = stmt.executeQuery(sql); ??????? } catch (SQLException ex) { ??????? } catch (ClassNotFoundException ex) { ??????? }
??? }
??? public int getRowCount() { ??????? try { ??????????? rs.last(); ??????????? return rs.getRow(); ??????? } catch (SQLException ex) { ??????????? return 0; ??????? } ??? }
??? public int getColumnCount() {
??????? try { ??????????? return rs.getMetaData().getColumnCount(); ??????? } catch (SQLException ex) { ??????????? return 0; ??????? } ??? } public String getColumnName(int c) ??? { ??????? try { ??????????? return rs.getMetaData().getColumnName(c); ??????? } catch (SQLException ex) { ??????????? return null; ??????? } ??? } ??? public Object getValueAt(int rowIndex,int columnIndex) { ??????? try { ??????????? rs.absolute(rowIndex + 1); ??????????? return rs.getObject(columnIndex + 1); ??????? } catch (SQLException ex) { ??????????? ex.printStackTrace(); ??????????? return null; ??????? } ??? } } MyFrame.java
package com.qysoft.system.jtable;
import javax.swing.*; import javax.swing.event.*; import javax.swing.text.*; import java.awt.*; import java.awt.event.*; import java.util.*; import java.text.*; import java.beans.*; import java.awt.BorderLayout; import java.awt.Rectangle;
public class MyFrame extends JFrame{ ??? public MyFrame() { ??????? this.setTitle("測試窗口"); ??????? this.setSize(300,500); ??????? this.setLocation(200,200); ??????? try { ??????????? jbInit(); ??????? } catch (Exception ex) { ??????????? ex.printStackTrace(); ??????? } ??? } ??? public static void main(String[] args) { ????? MyFrame frame=new MyFrame(); ????? frame.setVisible(true); ????? frame.setDefaultCloSEOperation(JFrame.EXIT_ON_CLOSE); ??? }
??? private void jbInit() throws Exception { ??????? jTable1=new JTable(new DbModel("select * from usertable")); ??????? this.getContentPane().setLayout(null); ??????? this.getContentPane().add(jPanel1,null); ??????? jButton2.setBounds(new Rectangle(223,82,90,27)); ??????? jButton2.setText("刪除"); ??????? jButton1.setBounds(new Rectangle(221,35,91,26)); ??????? jButton1.setText("添加"); ??????? this.getContentPane().add(jTable1); ??????? this.getContentPane().add(jButton1); ??????? this.getContentPane().add(jButton2); ??????? jTable1.setBounds(new Rectangle(16,17,156,226)); ??????? jPanel1.setBounds(new Rectangle(0,10,300)); ??? }
??? JPanel jPanel1 = new JPanel();??? JTable jTable1 =null;??? JButton jButton1 = new JButton();??? JButton jButton2 = new JButton();}
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|