【问题标题】:How to get connect SQLite2009pro to jtable?如何将 SQLite2009pro 连接到 jtable?
【发布时间】:2016-03-18 15:37:22
【问题描述】:

我创建了一个带有 sqlite2009pro 加密(密码)保护的 Db(student.db3)。如何将其连接到 JTable。请参阅以下代码

   import java.sql.*;
   import javax.swing.*;

   public class javaconnect {

             Connection conn=null;
             public static Connection connecrDb(){
       try{

           Class.forName("org.sqlite.JDBC");
           Connection      conn=DriverManager.getConnection("jdbc:sqlite:C:\\Users\\ME\\Desktop\\MY PROJECTS\\webcam\\sqlite3\\student.db3");
    //JOptionPane.showMessageDialog(null,"Connection Established");C:\Users\ME\Desktop\MY PROJECTS\Bunker Calcultaion Tool
     return conn;
    }catch ( Exception e){

        JOptionPane.showMessageDialog(null, e);
        return null;

    }


}

 }

我正在调用这个类,请参阅下面的代码

public void Update_table() {

    try{
   conn=javaconnect.connecrDb();
   String sql="SELECT * FROM grade";

    pst=conn.prepareStatement(sql);
   rs=pst.executeQuery();
  jTable1.setModel(DbUtils.resultSetToTableModel(rs));


}
catch( Exception e){

        JOptionPane.showMessageDialog(null, "problem exists");

   }
}

【问题讨论】:

    标签: java sqlite


    【解决方案1】:

    一种方法是让 DbUtils.resultSetToTableModel 方法返回 javax.swing.table.DefaultTableModel 的实例。

    您可以使用此构造函数构造 DefaultTableModel:

    DefaultTableModel(Vector data, Vector columnNames)
    

    数据向量包含所有行。每行本身就是一个 Vector,其中包含每行中的字段值。

    因此您可以使用类似于以下的代码:

    public static TableModel resultSetToTableModel(ResultSet rs) {
        Vector data = new Vector();
        while (rs.next()) {
            Vector row = new Vector();
            row.add(rs.getObject(1));
            row.add(rs.getObject(2));
            ... repeat for each field...
    
            data.add(row);
        }         
    
        Vector columnNames = new Vector();
        columnNames.add("columnName1");
        columnNames.add("columnName2");
        ... repeat for each field...
    
       TableModel result = new DefaultTableModel(data, columnNames);
    
       return result;
    }
    

    【讨论】:

    猜你喜欢
    • 2011-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-05
    相关资源
    最近更新 更多