无法在JTable中显示行(来自数据库的值)

时间:2013-09-27 13:39:14

标签: java sql database swing jtable

亲爱的程序员,您好

这是我的第一篇文章,我希望我能够描述我遇到了哪种问题。 我是德国人,这就是为什么我的班级名字是德语。我试着提出一些有用的评论。

我正在尝试将数据库的值(称为“buchungen”)放入JPanel中的JTable中。 我的JTable显示但只有标题而没有行..

这是我的JTable里面的类:

public class Verlauf extends SQL{

JTable table = new JTable();
DefaultTableModel model = new DefaultTableModel();


Verlauf(){

    removeAll();

    try {
        rs = stmt.executeQuery("SELECT * FROM buchungen WHERE Ausführer =     '" + kontoNr + "'");  // kontoNr equals to Ausführer in the database
    } catch (Exception e) {
        e.printStackTrace();
    }

    displayData(rs);

    repaint();
}


public void displayData(ResultSet rs)
{

    int i;
    int count;
    String a[];
    String header[] = {"BuchungsNr","Ausführer","Betrag","Aktion","Empfänger"};       //Table Header Values, change, as your wish
    count = header.length;

    //First set the Table header
    for(i = 0; i < count; i++)
    {
        model.addColumn(header[i]);
    }
    table.setModel(model);                      //Represents table Model
    add(table.getTableHeader(),BorderLayout.NORTH);

    a = new String[count];

    // Adding Database table Data in the JTable
    try
    {
        while (rs.next())
        {
            for(i = 0; i < count; i++)
            {
                a[i] = rs.getString(i+1);
            }
            model.addRow(a);                    //Adding the row in table   model
            table.setModel(model);              // set the model in jtable
        }
    }

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

我从其他帖子中得到了jtable的方法,我再也找不到了... 我希望有人可以帮助我:)。

编辑:与我的数据库的连接是在另一个类(称为SQL)中进行的,它可以正常工作,因为我可以完全按照我在这里的方式从其他类中使用它。

问候Lukas Warsitz

1 个答案:

答案 0 :(得分:1)

虽然已将JTable标头添加到容器中,但表本身还没有

add(table);