Java Can';无法从数据库中填充我的JComboBox
我花了几个小时试图让我的JComboBox填充数据库中的列名,但并没有成功。首先,我加载了表中的三个列名以放入其中,然后将其拆分为一个列名,以查看它是否能正常工作 但我得到了一个NullPointerException 有人能给我一些指导,告诉我怎么做吗 谢谢Java Can';无法从数据库中填充我的JComboBox,java,mysql,swing,nullpointerexception,jcombobox,Java,Mysql,Swing,Nullpointerexception,Jcombobox,我花了几个小时试图让我的JComboBox填充数据库中的列名,但并没有成功。首先,我加载了表中的三个列名以放入其中,然后将其拆分为一个列名,以查看它是否能正常工作 但我得到了一个NullPointerException 有人能给我一些指导,告诉我怎么做吗 谢谢 public BlankStock() { conman = new ConnectionManager(); con = conman.CreateConnection(); i
public BlankStock() {
conman = new ConnectionManager();
con = conman.CreateConnection();
initComponents();
BlankBox.setModel(fillBlankBox());
BlankBox.removeAllItems();
BlankBox.addItem("Please Select...");
fillBlankBox();
}
public DefaultComboBoxModel fillBlankBox() {
try {
String qry = "SELECT MCOBlanks FROM `blanks` WHERE MCOBlanks = 'blanks' ";
//Connection con = null;
// con = getConnection();
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(qry);
System.out.println(rs.getStatement().toString());
ComboBoxModel cbm = new DefaultComboBoxModel();
DefaultComboBoxModel dcbm = new DefaultComboBoxModel();
while (rs.next()) {
Object data1 = BlankBox.getSelectedItem();
cbm.addListDataListener(BlankNo);
}
dcbm.addElement(BlankBox);
BlankBox.setModel(cbm);
rs.close();
stmt.close();
} catch (SQLException e) {
System.out.println(e);
}
// } finally {
// try {con.close();} catch (SQLException e){;}
// }
return cbm;
哪一行正在抛出NPE?在哪一行获得异常?(在代码中用注释注释它,因为我们看不到您的Link枚举数),我建议您考虑一下代码中哪些可能是坏的做法:在最终{}块中总是关闭RESUTSET集、语句(如果需要的话,连接)。永远不要留下一个空的异常块,就像你在那里评论的那样。我强烈建议您不要从桌面客户端打开到数据库的连接(除非这是一个学术练习),而是使用应用程序服务器上的连接池,并让您的桌面应用程序与其通信。也要将表示代码与数据检索分离,因为您的代码将更干净、更可重用。不要在try-catch-finally块中创建Swing JComponent,请使用之前初始化的局部变量。。。,在最终执行块后,将model设置为JComboBox结果设置NPE被抛出到一个完全不同的类中,该类与JComboBox.java文件有关,然后返回到显示BlankBox.setModel(fillBlankBox())的行;