Java 尝试使用数据库中的整数值填充JComboBox。代码中有什么错误?
我正在建立一个图书馆管理系统。我在问题表中的book_ID值为int。如何将它们添加到组合框中。每个学生都有好几本书。我想添加组合框来选择要在ReturnBook类中使用的特定书籍Java 尝试使用数据库中的整数值填充JComboBox。代码中有什么错误?,java,eclipse,swing,jdbc,jcombobox,Java,Eclipse,Swing,Jdbc,Jcombobox,我正在建立一个图书馆管理系统。我在问题表中的book_ID值为int。如何将它们添加到组合框中。每个学生都有好几本书。我想添加组合框来选择要在ReturnBook类中使用的特定书籍 JComboBox<Integer> bookID = new JComboBox<Integer>(); bookID.addMouseListener(new MouseAdapter() { public void mousePr
JComboBox<Integer> bookID = new JComboBox<Integer>();
bookID.addMouseListener(new MouseAdapter() {
public void mousePressed(MouseEvent e) {
ArrayList<Integer> books = new ArrayList<Integer>();
String query = "SELECT Book_ID FROM Issue where Student_ID=?";
try {
pst = conn.prepareStatement(query);
rs = pst.executeQuery(query);
while(rs.next()){
int id = rs.getInt("Book_ID");
books.add(id);
}
rs.close();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
// populate the combo box
DefaultComboBoxModel<Integer> model = new DefaultComboBoxModel<Integer>((Integer[]) books.toArray());
bookID.setModel(model);
}
});
bookID.setBounds(467, 53, 163, 26);
contentPane.add(bookID);
JComboBox bookID=newjcombobox();
bookID.addMouseListener(新的MouseAdapter(){
公共无效鼠标按下(MouseEvent e){
ArrayList books=新建ArrayList();
String query=“从学生ID=?”所在的问题中选择图书ID”;
试一试{
pst=conn.prepareStatement(查询);
rs=pst.executeQuery(查询);
while(rs.next()){
int id=rs.getInt(“Book_id”);
图书。添加(id);
}
rs.close();
}捕获(SQLException e1){
//TODO自动生成的捕捉块
e1.printStackTrace();
}
//填充组合框
DefaultComboxModel=newDefaultComboxModel((整数[])books.toArray());
bookID.setModel(model);
}
});
簿记编号.立根(467,53,163,26);
contentPane.add(bookID);
不要在JComboBox
上使用鼠标听筒,用户使用键盘来执行此操作。问题是,为什么要等到用户尝试激活组合框后再填充它?为什么不在知道学生id后填充它?这就提出了一个问题,您什么时候将学生id绑定到查询参数?我使用学生id填充学生数据文本字段,但在同一查询过程中找不到将图书id值添加到组合框的方法。所以尝试了这个方法。您从未绑定“student\u id”参数。加载学生详细信息后,我建议先加载书籍详细信息,然后使用搜索按钮将学生详细信息(如姓名、学期)添加到JTextField中。表单的第二部分包含将返回的书籍详细信息。问题是我为同一个学生ID发行了多本书。这就是我被困的地方。我选择添加组合框来选择用于填充书籍详细信息的书籍ID。现在我不知道如何用整数值填充组合框。这就是我需要帮助的地方。