SQL Daten von Webservice an Client übergeben

hausttom

Mitglied
Hallo,

ich habe vor kurzem angefangen mich mit Java zu beschäftigen. Ich will einen Webservice schreiben, der Daten von meiner MySQL-Datenbank an meinen lokalen Client weiterleitet. Ich habe soweit auch den Webservice implementiert und der Zugriff auf die Datenbank klappt auch einwandfrei. Einen lokalen Client zu implementieren sollte ich auch hinbekommen.

Meine Frage wäre jetzt, mit welchem Datentyp ich die Daten aus der Datenbank am besten an den Client übergeben kann. Ich benutze zur Programmierung Eclipse und die Java API JAX-WS. Meine Java Version ist Java 6. Die Daten aus der Datenbank hole ich mir mit einem ResultSet raus. Es werden mehrere Spalten und viele Datensätze bei Anfrage abgefragt.

Bei der Erstellung des Webservice habe ich mich im großen und ganzen an den Aufbau von diesem Tutorial gehalten: Create stand-alone web services applications with Eclipse and Java SE 6, Part 1: The web service server application

Mir wäre es am liebsten, wenn die Daten in einer Art ResultSet zurückgegeben werden können aber so etwas wie ein 2 dimensionales Array waren auch ganz ok. Bei dem Versuch das ganze mit einem zweidimensionalen Array zurückzugeben, gab es immer Probleme und das Script, mit dem ich den Client erzeuge, macht daraus immer eine List. Ich habe auch schon gehört, dass man das ganze eventuell über einen eigenen Datentyp machen kann aber ich habe keine Ahnung wie man so etwas implementiert. Vielleicht könnte man das ResultSet auch in XML umwandeln und dann im Client wieder zurück.

Ich hoffe ihr könnt mir bei diesem Problem helfen.
 

cljk

Mitglied
ResultSet wird nicht möglich sein, da das ein Objekt ist, dass sich auf den Datenbanklink bezieht - erstell dir eine Klasse, die das Ergebnis mappt (enthält die Felder deines Ergebnisses) und programmier eine Schleife, die das Resultset in eine Liste dieser Objekte umwandelt und die Liste ist dein Rückgabetyp.

Anders wird das nicht vernünftig gehen.
 

hausttom

Mitglied
Danke erstmal für deinen Tipp. Da ich ein Neuling in Java bin, hab ich jetzt noch nicht so die Ahnung von sowas? Könntest du mir eventuell kurz erklären, wie ich sowas angehen soll? Macht man sowas dann mit einer Inner-Class und mit meinem Client greife ich dann auf diese zu?

Ich schreibe dann in meiner Webservice-Klasse ca. 10 Methoden, mit jeweils anderen SQL-Anweisungen, also ich habe dann immer verschiedene SELECT Parameter. Könnte man dann irgendwie die ResultSet-Metadaten mit benutzen?
 

cljk

Mitglied
Danke erstmal für deinen Tipp. Da ich ein Neuling in Java bin, hab ich jetzt noch nicht so die Ahnung von sowas? Könntest du mir eventuell kurz erklären, wie ich sowas angehen soll? Macht man sowas dann mit einer Inner-Class und mit meinem Client greife ich dann auf diese zu?
Also ich will da jetzt keinen kompletten Sourcecode bauen (ich kenn ja nichtmal deine Queries) - aber letztlich baust du dir ein paar Klassen, die deinem ResultSet entsprechen - ob als private Klassen oder eigenständig... ist wohl egal.

Die Schleife sieht dann irgendwie so aus...

Java:
ResultSet rs;
List<MeinObjekt> result = new LinkedList<MeinObjekt>();

... da fehlt was

while (rs.next()) {
 // mapping
 MeinObjekt o = new MeinObjekt();
 o.setId = rs.getInt(1);
 o.setName = rs.getString(2);
 ...
 result.add(o);
}
return result;
Wie du das ausgestalten musst, kann ich nicht sagen - das bekommst schon raus.

Ich schreibe dann in meiner Webservice-Klasse ca. 10 Methoden, mit jeweils anderen SQL-Anweisungen, also ich habe dann immer verschiedene SELECT Parameter. Könnte man dann irgendwie die ResultSet-Metadaten mit benutzen?
Nope, wüsste nicht wie das gehen soll. In einem Webservice können (meines Wissens) keine dynamischen Objekte zurückgegeben werden.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
looparda JPA Persistenz vom in GUI veränderten Daten-Modell Allgemeines EE 7
S JSP Zwischen zwei Formularen Daten austauschen Allgemeines EE 0
P Daten von HTML and JSP schicken Allgemeines EE 0
D Apache POI Probleme mit Daten(Datum) die aus Formeln entstehen Allgemeines EE 3
C JSF Bestimmte Daten aus der Datenbank anzeigen lassen Allgemeines EE 13
M Daten aus der Resource werden nicht übernommen Allgemeines EE 4
F Servlet Daten im Speicher ablegen Allgemeines EE 3
T Scopes - Daten in JSF-Formular anlegen/bearbeiten, Felder vorbelegen Allgemeines EE 3
A Anfängerfrage: daten in datenbank speichern Allgemeines EE 8
K Daten aus ApplicationServer auf Website darstellen Allgemeines EE 5
C daten von php zu jsp Allgemeines EE 3
MQue Server -> Client zyklische Daten senden Allgemeines EE 20
W Daten mit j2ee aus datenbank abfragen Allgemeines EE 8
M Daten aus JavascriptSeite von Java auswerten lassen Allgemeines EE 3
I Über Formular Daten zu Servlet Allgemeines EE 36
B Session Daten pro User merken Allgemeines EE 9
M EJB Löschen von DB-Daten beim Deployen verhindern Allgemeines EE 2
B JSF - selectOneMenu mit Daten aus faces-config füllen Allgemeines EE 5
J Socket daten darstellen per jsp,servlet Allgemeines EE 2
S Downloadbox auch ohne Daten erzwingen // Content-Disposition Allgemeines EE 6
S Daten in Java schreiben und PHP lesen Allgemeines EE 8
L speichern von daten mittels servlet in xml Allgemeines EE 8
P Tomcat Servlet POST Daten als Array Allgemeines EE 2
S Best-Practice? Daten über Tier-Grenzen hinweg? Allgemeines EE 2
V Bean-Daten in JSF-JSP finden Allgemeines EE 3
D Bekomme DAten von einen Jsp nicht in den Tag Handler Allgemeines EE 2
S JSP - geschichtliche Daten Allgemeines EE 4
F Session Bean -> Daten aus dem Servlet holen Allgemeines EE 11
D Abfrage der header daten funktionieren nicht. Allgemeines EE 2
G Daten aus Inputfeldern in Tabelle speichern Allgemeines EE 6
A JSF - Daten in Session speichern Allgemeines EE 2
S Daten in ein Excel file exportieren Allgemeines EE 3
S Post und Get Daten Allgemeines EE 5
clemson Daten aus Email holen Allgemeines EE 4
J Formular aktualisieren-Daten werden erneut in DB geschrieben Allgemeines EE 6
H daten in session speichern Allgemeines EE 8
A Tabstopp-getrennte Daten üb. Webformular in Datenbank laden! Allgemeines EE 2
T Daten aus der Webseite (JSP) als .txt speichern Allgemeines EE 8
M servlet daten einlesen -> hashmap speichern Allgemeines EE 3
M Speicherung von Daten und JSP Allgemeines EE 9
M einfacher REST Webservice Allgemeines EE 4
M RESTful Webservice mit json Allgemeines EE 2
A Webservice (SOAP) Lookup Allgemeines EE 1
D Webservice benutzen Allgemeines EE 4
S Welcher Java EE Applikationserver für RESTful Webservice? Allgemeines EE 2
N Authentication/UserPrincipal mit Rest Webservice? Allgemeines EE 6
N WebService WAR-File auf Tomcat-Server Allgemeines EE 1
B Inject webservice von cxf.xml Allgemeines EE 1
F ein wenig Hilfe - Webservice Allgemeines EE 1
D Servlet Webservice Konfigurationsdateien Best Practice Allgemeines EE 3
D Java Projekt goes Webservice Allgemeines EE 6
G WebService Concurrency Allgemeines EE 6
G WebService portieren Allgemeines EE 11
H Webservice testen Allgemeines EE 7
M Webservice - Anhang senden und codieren Allgemeines EE 4
M Spring: Bean als Webservice freigeben Allgemeines EE 9
O eclipse - tomcat: Problem bei einfachem Webservice Allgemeines EE 16
O webservice mit java erstellen. was brauch ich alles dazu? Allgemeines EE 53
B .net-Webservice aufrufen Allgemeines EE 9
C HashMap über Webservice übertragen Allgemeines EE 2
G REST Webservice Allgemeines EE 11
H WebService mittels SessionBean aufrufen? Allgemeines EE 7
F JBoss WebService Allgemeines EE 3
S webservice mit tomcat und axis ohne eclipse laufen lassen? Allgemeines EE 2
G WebService Client: Parameterübergabe Allgemeines EE 9
R Bei AXIS-Start gleich WebService starten Allgemeines EE 2
R Embedded WebService-Server Allgemeines EE 4
L WebService Problem mit SessionBean Allgemeines EE 14
L Web-Client - SessionBean - WebService Allgemeines EE 2
C WebService deployen .Verzweiflung. Allgemeines EE 2
M Google - WebService Allgemeines EE 3
M Probleme beim Webservice Deployment(Sun ApplicationServer) Allgemeines EE 2
LimDul Rest-Client/DTOs aus JSON Ergebnis generieren Allgemeines EE 3
I Client Desktop -> Update in Browser? Allgemeines EE 0
Yamanuchi Glassfish 4 : Client Anzahl restriktieren Allgemeines EE 2
R Web-Applikation mit GWT- und Android-Client Allgemeines EE 0
B Ordner von Client an Server senden Allgemeines EE 2
J Client Request vom Server aus. Allgemeines EE 2
T Client IP ermitteln Allgemeines EE 3
C Objekte aus EJB an Client schicken Allgemeines EE 6
T JMX und ServiceMBean - Zugriff mittels Client Allgemeines EE 2
S Rich Client Application mit Eclipse/WebLogic/EclipseLink/EJB3 Allgemeines EE 2
C JMS Remote Client Allgemeines EE 5
G EJB client Allgemeines EE 4
W JBoss log dependencies aus jbossall-client.jar Allgemeines EE 7
W Client als Jar und die vielen Abhängigkeiten Allgemeines EE 2
P unique ID am Client Allgemeines EE 3
G XML vom Server zum Client Allgemeines EE 4
D Wohin mit Resourcen (Bilder, txt Dateien) im Application Client Allgemeines EE 3
J geschützter Bean zugriff mit einem Rich-Client Allgemeines EE 2
P Client startet viel zu langsam ??? Allgemeines EE 5
K Glassfish Application Client Allgemeines EE 4
C EntityBean im GWT-Client Allgemeines EE 2
foobar Client-Jar und JPA-Entities für Remotzugriff Allgemeines EE 12
I Session-Attribute von Client zugänglich? Allgemeines EE 6
M Objektübergabe von Client zum Server Allgemeines EE 11
R EJB Client: Probleme mit der Client.jar Allgemeines EE 2
M "Auto Client-Request" oder Server-Push oder Ajax – Allgemeines EE 2
B Client starten ohne Eclipse Allgemeines EE 4
B Client ausführen mit JBoss v4.2 Allgemeines EE 3

Ähnliche Java Themen

Neue Themen


Oben