【问题标题】:How to view database resultset in Java swing如何在 Java swing 中查看数据库结果集
【发布时间】:2012-07-31 06:45:55
【问题描述】:

如何在 Java swing 中查看数据库结果集?我的选择是

  1. jeditorpane
  2. jtable.

查看该文件后,我想将文件保存在.rtf.pdf 中。这在 Java 桌面应用程序中怎么可能实现?

注意:请勿使用第三方 API 或库

【问题讨论】:

  • 如果你想和第三者一起,我可以告诉你
  • 到目前为止你做了什么?任何研究任何代码?

标签: java swing jdbc jtable jeditorpane


【解决方案1】:

查看您的结果 - JTable 是您的最佳选择

保存结果,好吧,除非您想使用第三部分库,否则您的选择非常有限,除非您非常熟悉要使用的各种文件格式。

开箱即用,我想说 CVS 很容易实现。

【讨论】:

    【解决方案2】:

    JTable 会做得最好,这是在JTable 上显示ResultSet 的代码

    public static void main(String[] args) throws Exception {
    // The Connection is obtained
    
    ResultSet rs = stmt.executeQuery("select * from product_info");
    
    // It creates and displays the table
    JTable table = new JTable(buildTableModel(rs));
    JOptionPane.showMessageDialog(null, new JScrollPane(table)); // or can you other swing component
    
    // Closes the Connection
    }
    

    方法buildTableModel:

    public static DefaultTableModel buildTableModel(ResultSet rs)
        throws SQLException {
    
    ResultSetMetaData metaData = rs.getMetaData();
    
    // names of columns
    Vector<String> columnNames = new Vector<String>();
    int columnCount = metaData.getColumnCount();
    for (int column = 1; column <= columnCount; column++) {
        columnNames.add(metaData.getColumnName(column));
    }
    
    // data of the table
    Vector<Vector<Object>> data = new Vector<Vector<Object>>();
    while (rs.next()) {
        Vector<Object> vector = new Vector<Object>();
        for (int columnIndex = 1; columnIndex <= columnCount; columnIndex++) {
            vector.add(rs.getObject(columnIndex));
        }
        data.add(vector);
    }
    
    return new DefaultTableModel(data, columnNames);
    
    }
    

    如果不使用 3rd 方 api

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-09
      • 2015-03-09
      • 1970-01-01
      • 2011-10-15
      • 1970-01-01
      相关资源
      最近更新 更多