从数据库获取Id和数据并添加到JCombobox

时间:2014-09-09 07:01:26

标签: java swing jdbc jcombobox comboboxmodel

我想从数据库中获取名称和ID,并将其添加到JCombobox。为此我用了

       public void add_Category(JComboBox cmb) {

       try {
            String query = "SELECT * FROM categories";
            ResultSet rs = stmt.executeQuery(query);
            while (rs.next()) {

                String Txtcmb = rs.getString(2).trim();
                int idCmb = rs.getInt("id");
                Item comboItem = new Item(idCmb, Txtcmb); 
                cmb.addItem(comboitem);   //This line add only 1 object in combocox but i have 5 in my database
           }
       } catch(Exception e) {

       }
   }

Item.java

public class Item {
    private int id;
    private String description;

    public Item(int id, String description) {
        this.id = id;
        this.description = description;
    }
    public int getId() {
        return id;
    }

    public String toString() {
        return description;
    }
} 

现在的问题是当我将对象添加到组合框中时,它只添加了一个对象,而我有5个对象进入我的数据库。

它只显示组合框中的一个项目,而不是5个。如果我只将字符串添加到数据库comboItem.addItem(Txtcmb);中,那么我还想清除它还能正常工作

任何想法都将受到赞赏。提前谢谢。

1 个答案:

答案 0 :(得分:0)

感谢所有人。其实我正在使用Item comboItem [];在while之前和和项comboItem = new Item(idCmb,Txtcmb);在里面。当我删除I​​tem comboItem [];排队并清理并再次建立我的项目,然后开始工作。再次感谢您的关注。