Другие уже ответили, как решить вашу проблему, поэтому я не буду повторять то, что уже было сказано, но я скажу так: вам, вероятно, следует найти способ решения ваших проблем, не зная счетчика набора результатов дочитая результаты.
Существует очень немного обстоятельств, когда счетчик строк действительно необходим перед чтением результирующего набора, особенно в таком языке, как Java.Единственный случай, когда я думаю о том, где счетчик строк необходим, - это когда количество строк - это единственные данные, которые вам нужны (в этом случае запрос на подсчет будет лучше).В противном случае вам лучше использовать объект-оболочку для представления данных таблицы и хранить эти объекты в динамическом контейнере, таком как ArrayList.Затем, после того как набор результатов будет повторен, вы можете получить счетчик списка массивов.Для каждого решения, которое требует знания счетчика строк перед чтением набора результатов, вы, вероятно, можете придумать решение, которое делает это, не зная счетчика строк перед чтением без особых усилий.Думая о решениях, которые обходят необходимость знать количество строк перед обработкой, вы избавляете ResultSet от необходимости прокрутки до конца набора результатов, а затем обратно к началу (что может быть ОЧЕНЬ дорогой операцией для больших наборов результатов),
Теперь, конечно, я не говорю, что никогда не бывает ситуаций, когда вам может понадобиться количество строк перед чтением набора результатов.Я просто говорю, что в большинстве случаев, когда люди думают, что им нужно количество результирующих наборов до их чтения, они, вероятно, этого не делают, и стоит потратить 5 минут, чтобы подумать, есть ли другой способ.
Просто хотел предложить свои 2 цента по теме.