当我尝试将数据从MySQL数据库获取到jtable时,在jtable中重复相同的数据

时间:2016-09-07 17:24:55

标签: vector jtable

try {
            Connection getConnection = getDatabase_Connection.getConnection();
            Statement getsStatement = getConnection.createStatement();
            ResultSet getResultSet = getsStatement.executeQuery("Select * from ap_database.ap_details");
            DefaultTableModel setDefaultTableModel = (DefaultTableModel) jTable1.getModel();
            Vector setVector = new Vector();
            while (getResultSet.next()) {
  

这里我将数据从resultset设置为vector

                setVector.add(getResultSet.getString("s_no"));
                setVector.add(getResultSet.getString("ap_rm"));
                setVector.add(getResultSet.getString("ap_serial"));
                setVector.add(getResultSet.getString("ap_gname"));
                setVector.add(getResultSet.getString("ap_ci"));
                setVector.add(getResultSet.getString("ap_co"));
                setVector.add(getResultSet.getString("ap_edate"));
                setVector.add(getResultSet.getString("ap_issuedp"));
                setVector.add(getResultSet.getString("ap_remark"));
                setVector.add(getResultSet.getString("ap_status"));
  

在此我将我的矢量添加到DefaultTableModel

                setDefaultTableModel.addRow(setVector);  
                jTable1.setModel(setDefaultTableModel);
            }
  

之后,我的第一行数据重复了我在结果集中的行数。

        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, e.getMessage(), "Error", JOptionPane.ERROR_MESSAGE);
        }

1 个答案:

答案 0 :(得分:0)

首先需要下载rs2xml.jar文件并添加到项目文件夹并在结果集后面编写此代码

DefaultTableModel setDefaultTableModel = new DefaultTableModel();
jTable1.setModel(DbUtils.resultSetToTableModel(getResultSet));

它会起作用。