У меня есть приложение, которое получает данные из базы данных и создает excel. Я хотел разделить dao класс, который получает resultSet из db и класс, который создает excel с этим набором результатов.Выполнение ResultSet с другим методом
Таким образом, я передавал ResultSet из Dao в другой класс, чтобы создать файл excel. Но когда я запускаю rs.next(), он дает мне ошибку «Закрытый результат: следующий». Я читал в Интернете, что передача ResultSet не является хорошей идеей, поэтому я просто стараюсь сделать это в классе dao, и это сработало.
Но таким образом я не люблю выполнять другую задачу (создание excel) в классе dao, и я не хочу создавать класс, а затем отправлять их в виде списка. Поэтому мой вопрос в том, почему плохо передавать результаты в другой класс или функцию? Почему я получил исключение, когда передаю его и пытаюсь вызвать rs.next()?
Суммировать мой код выглядит как эти:
ResultSet rs = myDao.getResult();
ExcelCreator excelCreator = new ExcelCreator();
excelCreator.createExcel(rs);
проверьте, закрывается ли в вашем классе DAO соединение закрытия, так как закрытие соединения также может привести к закрытию ResultSet –