Łukasz Kowalewski

Łukasz Kowalewski Ostatni semestr
Informatyki

Temat: Przesyłanie danych z bazy przez Socket

Witam!
Napotkałęm problem podczas pisania aplikacji na androida. Tworzę system zbierania danych ankietowych wykorzystujący urządzenia z androidem. Jest to moja pierwsz aplikacja tworzona na andka.
Napisałem serwer w javie, na którym tworzy się ankiety i są one przechowywane. Do połączenia serwera z urządzeniem używam Sockety. Wszystko ładnie się łączy ale problem jest w przesłaniu danych z bazy serwera do bazy na urządzeniu.
Chciałem zrobić coś takiego:

CachedRowSet pytania = new CachedRowSetImpl();
wyniki2 = zapytanie.executeQuery("SELECT idPytania, Pytanie, Nr_pytania FROM Pytania WHERE Ankiety_idAnkiety='"+idankiety+"' ORDER BY Nr_pytania ASC");

pytania.populate(wyniki2);
wyniki2.close();
oos.writeObject(pytania);

Jednak na androidzie nie ma klasy CachedRowSet. Ma ktoś pomysł jak można dokonać tego przesyłu? Zastanawiam się nad napisaniem własnej klasy używając Serializable ale problemem będzie w czym przechować te dane, gdyż każda tabela ma kilka kolumn. Z góry dziękuję za każdą podowiedź.
Piotr T.

Piotr T. Spring/Microservices

Temat: Przesyłanie danych z bazy przez Socket

Łukasz K.:
Witam!
Napotkałęm problem podczas pisania aplikacji na androida. Tworzę system zbierania danych ankietowych wykorzystujący urządzenia z androidem. Jest to moja pierwsz aplikacja tworzona na andka.
Napisałem serwer w javie, na którym tworzy się ankiety i są one przechowywane. Do połączenia serwera z urządzeniem używam Sockety. Wszystko ładnie się łączy ale problem jest w przesłaniu danych z bazy serwera do bazy na urządzeniu.
Chciałem zrobić coś takiego:

CachedRowSet pytania = new CachedRowSetImpl();
wyniki2 = zapytanie.executeQuery("SELECT idPytania, Pytanie, Nr_pytania FROM Pytania WHERE Ankiety_idAnkiety='"+idankiety+"' ORDER BY Nr_pytania ASC");

pytania.populate(wyniki2);
wyniki2.close();
oos.writeObject(pytania);
generalnie to najłatwiej do przechowania danych użyć mapy (lub jakiegoś obiektu z mapą)
aby przesłać taki obiekt są 3 opcje :
1.serializacja javowa
2. protokół binarny np użyć protocol buffers http://touchlabblog.tumblr.com/post/24474572337/androi...
3. zapkować dane do JSON i odczytać po 2 stronie ,wtedy można się pokusić nawet o wystawienie usługi
jako RESTowego webservicu ( od JEE6 i JAX-RS pisze się RESTowe webservicy banalnie prosto) .Ten post został edytowany przez Autora dnia 21.05.13 o godzinie 01:28
Marcin S.

Marcin S. Programista, trener
i konsultant w
zakresie .NET/.NET
Cor...

Temat: Przesyłanie danych z bazy przez Socket

Proponuję zamiast Socketów zastosować Web Service i przesyłać komunikaty w formacie JSON po protokole HTTP(S).
Łatwiejsze w implementacji i bardziej bezpieczne. Web Service możesz utworzyć w .NET lub w Javie
Najlepiej jeśli twoje API będzie zgodne z zasadami RESTful lecz to nie jest konieczne.

Następna dyskusja:

Pobieranie danych NMEA z GPSa




Wyślij zaproszenie do