java-forum.org - Java programmieren aus Leidenschaft

Zurück   java-forum.org - Java programmieren aus Leidenschaft > Java - Programmierung > Datenbankprogrammierung

Datenbankprogrammierung Fragen zur Anbindung und Programmierung von Datenbanken bzw. Datenbankabfragen

Antwort    
Themen-Optionen Thema durchsuchen Ansicht
Alt 20.06.2012, 18:49   #1 (permalink)
neuling__
Nicht angemeldet
 
Fachbeiträge: n/a
Standard Daten Auslesen

Hallo,

Habe eine Frage bezüglich des Auslesen von Datensätzen einer Datenbank, vorweg ein beispiel:

Tabelle Person:
PersonNrName
1Name A
2Name B

Tabelle Fahrzeug:
FahrzeugNrBezeichnung
1Bezeichnung A
2Bezeichnung B
3Bezeichnung C

Angenommen die Beziehung sei m:n (Eine Person kann mehrere Fahrzeuge besitzen. Ein Fahrzeug kann mehreren Personen gehören.), darraus ergibt sich beispliesweise folgendes:

Tabelle Person_Fahrzeug:
PersonNrFahrzeugNr
11
12
22
23

Per join kann ich mir nun ausgeben lassen welche Fahrzeuge der Person mit dem Namen "Name A" gehören, das Ergebnis wären die folgenden Datensätze:
PersonNrNameFahrzeugNr
1Name A1
1Name A2

Wie kann ich hierraus nun "Personen-Objekte" mit der nachfolgenden Struktur bilden?
Java Code: Quelltext in neuem Fenster öffnen
1
2
3
4
5
6
7
8
9
public class Person {
 
      private String name;
      private ArrayList<String> fahrzeuge;
 
      public Person(String name, ArrayList<String> fahrzeuge) {
            // ...
      }
}

Natürlich könnte ich in einer Schleife für jede einzelne Personennummer die zugehörigen Fahrzeuge abfragen, geht dies jedoch auch "leichter"?
Arbeite mit HSQL, habe dort etwas über Arrays gelesen. Wäre es damit realisierbar?


Gruß
 
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 21.06.2012, 10:34   #2 (permalink)
neuling__
Nicht angemeldet
 
Fachbeiträge: n/a
Hat keiner eine mögliche Vorgehensweise?
 
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 21.06.2012, 10:42   #3 (permalink)
Java-Forum Team
Moderator
 
Benutzerbild von SlaterB
 
Registriert seit: 13.11.2005
Fachbeiträge: 32.026
Abgegebene Danke: 0
Erhielt 2.623 Danke für 2.583 Beiträge
der Zusammenhang zwischen einer Klasse und einer DB-Abfrage ist recht vage, dein Ziel unklar,
augenscheinlich könnte es um das häufige Mapping für Frameworks wie Hibernate gehen, immer mühsame Aufgaben,

du bist aber anscheinend bei JDBC und willst eine Ergebnismenge verarbeiten?
durchlaufe die Ergebnisse in einer Schleife, zu jeder Personnummer schaue in einer Map nach, ob schon eine Person vorhanden ist,
gegebenenfalls anlegen (und merken),

dann in diesem Person-Objekt das aktuelle Auto in die vorhandene Liste einfügen,

falls Auto irgendwann auch mal eine Klasse ist und es keine doppelt erstellten Autos geben soll, dann auch dafür Map anlegen usw.,
generell könnten erst alle Personen/ Autos einzeln geladen werden,
und der Join lädt dann nur die jeweilgen Ids, spart andere Spalten wie Personenname doppelt in der Query
__________________
Hansa wird Meister.
SlaterB ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 21.06.2012, 11:03   #4 (permalink)
neuling__
Nicht angemeldet
 
Fachbeiträge: n/a
Zitat: SlaterB
Beitrag anzeigen
der Zusammenhang zwischen einer Klasse und einer DB-Abfrage ist recht vage, dein Ziel unklar,
Dachte es wäre durch das Beispiel deutlich geworden, ich möchte gerne zu jeder vorhandenen Person in der DB die zugehörigen Fahrzeuge wissen und dies als eigenes Objekt "speichern".

Zitat: SlaterB
Beitrag anzeigen
du bist aber anscheinend bei JDBC und willst eine Ergebnismenge verarbeiten?
durchlaufe die Ergebnisse in einer Schleife, zu jeder Personnummer schaue in einer Map nach, ob schon eine Person vorhanden ist,
gegebenenfalls anlegen (und merken),

dann in diesem Person-Objekt das aktuelle Auto in die vorhandene Liste einfügen,
Das scheint dann wohl das sinnvollste zu sein, alle Daten auszulesen und einfach zu überprüfen ob ein solches Objekt(PersonenNr, Name) bereits existiert.

Danke dir schon mal.
 
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Antwort    

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Daten aus ArrayList lassen sich nicht auslesen Rufus.Mueller Java Basics - Anfänger-Themen 12 13.06.2011 15:59
JSP - Daten aus externer Datei auslesen und anzeigen pizzamampf Java Basics - Anfänger-Themen 3 13.10.2008 09:16
Verkettete Liste renek Allgemeine Java-Themen 5 07.10.2008 07:44
Daten schneller aus einer DB auslesen Generic1 Datenbankprogrammierung 9 12.09.2008 18:49
speichern und auslesen von daten aus einer datenbank gast2005 Datenbankprogrammierung 8 18.01.2005 10:12


Lesezeichen

Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:28 Uhr.


Powered by vBulletin® Version 3.8.6 (Deutsch)
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.2
Thanks for Smilies by smilies.4-user.de