2015-11-03 6 views
-4

Это немного странная проблема, но у меня есть массив ResultSet, из которых каждый ResultSet содержит различное количество строк. Теперь мне нужно хранить все эти строки, хранящиеся в каждом ResultSet массива, как один ResultSet. Это необходимо, так как мне нужно отсортировать все эти строки в соответствии с TIMESTAMP, хранящимся в столбце строк.Как я могу хранить массив строк ResultSet каждого ResultSet в одном ResultSet?

Есть ли какой-либо возможный способ реализации такой логики?

+2

Кажется, что вы не понимаете, чего вы действительно хотите – Andremoniy

+0

Я не уверен, правильно ли я понял ... У вас есть 'ResultSet []', где 'ResultSet', вероятно, реализует' java.util.Set ', и вы хотите объединить их в один. Кроме того, вы хотите отсортировать их по какой-то временной отметке или что? –

+0

@ Cedric: да мне нужно объединить их в один. –

ответ

2

Вы должны не сделать это.

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

Причина, по которой это такая плохая идея, является ResultSet представляет собой курсор на стороне сервера базы данных. Если вы не закрываете их в методе запроса, они не будут закрыты на стороне сервера. У пользователей не будет четкой ответственности за их очистку. В конце концов вы исчерпаете пул курсоров базы данных, и ваше приложение выйдет из строя.

Смежные вопросы