我正在尝试从表中获取项目并将它们显示到 JList 中。我运行了代码,JList 中没有显示任何内容,也没有错误。我调试了代码,它一直计算到表项长度。
跟着 this 回答。

static Connection conn = new DBConnection().connect();
private JList listDepartments = null;

public AddDepartment() {
    listDepartments = new JList();
    listDepartments.setBounds(189, 33, 1, 1);
    contentPane.add(listDepartments);

    update_departments(listDepartments);
}

private static void update_departments(JList listDepartments) {
    try {
        String sql = "Select * FROM Departments";
        PreparedStatement pstmt = conn.prepareStatement(sql);
        ResultSet rs = pstmt.executeQuery();
        DefaultListModel listModel = new DefaultListModel();
        while (rs.next()) {
            System.out.println("inside while");
            String departmentName = rs.getString("Name");
            listModel.addElement(departmentName);
        }
        listDepartments.setModel(listModel);
    } catch (Exception ex) {
        JOptionPane.showMessageDialog(null, ex);
    }
}

表内容:
名称:部门

列:

Id - INT 主键,自增,唯一

名称 - VARCHAR(255)

最佳答案

使用 JTable 更改并在 public addDepartment() 中添加了后续代码

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

listDepartments.setModel(listModel); 函数中删除了 update_departments()

关于java - JList 中不显示数据库表项,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40313246/

10-12 01:42