В коде в отдельном классе произвожу выборки и возвращаю ResultSet
public static ResultSet exe() throws Exception {
ResultSet rout;
Class.forName("oracle.jdbc.driver.OracleDriver");
...
ResultSet rs = stmt.executeQuery(sql); // 1
rout = rs; // 2
stmt.close();
conn1.close();
return rout;
}
А вызываю и обрабатываю так
public static void main(String args[]) throws Exception {
ResultSet r;
r = exe();
while (r.next()){
out(r.getString(1)); // Класс для вывода, работает
}
}
Я переписываю в новый ResultSet (2) и возвращаю. Но у меня выводится ошибка
Exception in thread "main" java.sql.SQLRecoverableException: Закрытое соединение: next
Почему закрытие соединения влияет на копию ResultSet и когда мне тогда закрывать соединение? Объясните, пожалуйста.
P.S.: Причем, если не закрывать соединение, все работает нормально. Но его же нужно закрывать обязательно?
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Я извиняюсь за свои макароныДан вес 26 инструментов ( float[] Kaal ), нужно проверить дает ли какой то набор инструментов ( Не больше 13 ) вес равный...
Мне в классе нужно создать массив (именно массив, не список) из X элементов, как затем размер этого массива увеличить и уменьшить на 1 элемент...
Решил посмотреть как работает метод start()Не нашел ни одного упоминания о методе run()