Как заполнить комбинированный список данными базы данных Java и Hibernate - PullRequest
1 голос
/ 09 октября 2019

вот мой код: в классе дао для чтения данных из БД

    public static List<Animals> read() {
    List<Animal> a = new ArrayList<Animal>();
    Transaction tran = null;
    Session session = NewHibernateUtil.getSessionFactory().openSession();
    try {
        tran = session.beginTransaction();
        a = session.createQuery("from Animal").list();
    } catch (RuntimeException e) {
        e.printStackTrace();
    } finally {
        session.flush();
        session.close();
    }
    return a;
}

и jframe:

List<Animal> animals = AnimalDao.read();

public void addCombo(){
for(Animal a : animals){ combo.addItem(a);}

В результате мой comboBox отображает такие вещи, как: model.Animals @5a0ffc79 Можете ли вы помочь мне разобраться, чего не хватает? заранее спасибо!

1 Ответ

1 голос
/ 09 октября 2019

По умолчанию при использовании объектов (а не строк) в JcomboBox значение, отображаемое в поле со списком, будет toString() методом объекта. Поэтому простой вариант будет реализовать toString() в вашем классе Animal со значением, которое вы хотите отобразить.

В качестве альтернативы, если этого недостаточно, вы можете использовать cellRenderer. Вы можете увидеть это руководство для использования

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...