java Hibernate显示来自JComboBox的记录
我正在使用hibernate创建一个简单的项目。我知道如何显示JTable
和JList
上的记录,但我不知道如何显示JComboBox
上的记录。无论如何,这是我的代码,并指导我如何将数据库记录显示到JComboBox
我没有任何错误或任何东西,但它只显示一条记录,这是我知道它在循环中的最后一条记录,但仍然无法确定如何显示所有记录。这是我的代码
变量:
private Object[] loadName;
加载和检索数据的方法:
public Object[] LoadSupplier(){
b = a.openSession();
b.beginTransaction();
Query query = b.createQuery("FROM Supplier");
@SuppressWarnings("unchecked")
ArrayList<Supplier> load = (ArrayList<Supplier>) query.list();
b.getTransaction().commit();
b.close();
for(Supplier supply : load){
loadName = new Object[]{supply.getSupplierName()};
}
return loadName;
}
并将其显示到数据库:
comboCategory = new JComboBox(LoadSupplier());
我所做的是直接调用该方法,将其作为JComboBox
值:)
告诉我我做得对不对。实现预期产出的最佳方式是什么
# 1 楼答案
每次for循环迭代时,您都在重新分配loadName变量,因此您不必惊讶以前的数据都没有保存。为什么不在for循环之前创建一个
DefaultComboBoxModel<E>
对象,然后在每次迭代时添加到循环内部的模型中呢