无法在JTable中显示列名称

时间:2013-09-26 05:35:30

标签: java swing jtable jtableheader

我在Java中创建了一个使用JTable的小表单并填写表格。我使用了以下代码。

import net.proteanit.sql.DbUtils;

 try
 {
        CreateConnection();
        PreparedStatement st =conn.prepareStatement("Select * from ABC;");
        ResultSet rs = st.executeQuery();
        jtable_clock.setModel(DbUtils.resultSetToTableModel(rs));
        conn.close();
 }
 catch(Exception ex)
 {    
      JOptionPane.showMessageDialog(null, ex.toString());
 } 

这里一切正常,但我无法在表格中设置列名。

我从表ABC中获取数据,但如何在表格中设置列名?

1 个答案:

答案 0 :(得分:1)

我没有遇到任何问题。尝试运行我的代码。替换我的数据库用户名&密码。

import java.awt.HeadlessException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;

/**
 *
 * @author Masud
 */
public class Test extends JFrame {

    public Test() throws HeadlessException {
        try {
            Class.forName("com.mysql.jdbc.Driver");
            Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/zoodb", "root", "12345678");
            Statement statement = connection.createStatement();
            ResultSet resultSet = statement.executeQuery("select * from ABC");
            JTable jTable = new JTable(DbUtils.resultSetToTableModel(resultSet));
            JScrollPane pane = new JScrollPane(jTable);
            add(pane);
        } catch (Exception ex) {
            Logger.getLogger(Test.class.getName()).log(Level.SEVERE, null, ex);
        }
        pack();
        setVisible(true);
    }

    public static void main(String[] args){
        new Test();
    }
}