Przesłanie obiektu ResultSet

0

Chcę przesłać obiekt ResultSet (zawiera wynik SQL'owego zapytania) poprzez socket, między serwerem, a klientem.
Jak odebrać ten obiekt? ResultSet odebraneDane = input.readLine(); gdzie input to obiekt BufferedReader zwraca błąd ponieważ nie zgadzają się typy- ResultSet i String.

W jaki sposób i co rzutować?

0

ewentualnie: jak sprawdzić ile wierszy wyciąga z bazy zapytanie (SELECT)?

0

rs.last();
rs.getRow(0;

0

ResultSet jest połączony z bazą danych i raczej nie można go zserializować, gdyż w przypadku wielkich wyników, on może je z bazy ściągać etapami. To wszystko zalezy oczywiscie od rodzaju bazy i sterownika. Najlepiej jakbys wczytal caly wynik do jakiegos swojego obiektu, ktory mozesz zserializowac i ten wlasnie obiekt przesłał.

0
ResultSet rs = stmt.executeQuery("SELECT * FROM EMPLOYEES");
CachedRowSet crs = new CachedRowSetImpl();
crs.populate(rs);

Przesyłasz crs.

http://java.sun.com/j2se/1.5.0/docs/api/javax/sql/rowset/CachedRowSet.html

1 użytkowników online, w tym zalogowanych: 0, gości: 1