加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

JTable的使用

发布时间:2020-12-12 16:00:27 所属栏目:MsSql教程 来源:网络整理
导读: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 jav

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();}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读