zoukankan      html  css  js  c++  java
  • 怎么样将数据库的表在Java中界面中显示出来

    原文地址:http://wenku.baidu.com/link?url=39cZltge1d1HbmnF0wCO9a1M7Z4rl5urIECtGmy5D6t058KN98k10cw1bHHp6emKOel3ngghR2MBzmVee5AchUoTfyYgNGIoAPRPlYLPrwC

    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();
    }
    }
  • 相关阅读:
    java mybatis 新增记录 与 insertSelective 保存问题
    01 开发环境搭建
    2021年:系列文章总结
    在win10上安装MTK驱动(附驱动下载链接)
    Gerrit 大量代码提交流程优化
    mysqldump的使用
    配置 Gerrit 迁移
    解决:编译安卓源码时 JDK 报错 error='Not enough space' (errno=12)
    修改Git Commit提交记录的用户名Name和邮箱Email
    Android 各层架构
  • 原文地址:https://www.cnblogs.com/nigel-jw/p/3414793.html
Copyright © 2011-2022 走看看