Entwurfsfragen zur Anbindung an einer MySQL DB - Klassenstruktur zum Data Model

Status
Nicht offen für weitere Antworten.

Dragonfire

Bekanntes Mitglied
Hi,
würde gerne Informationen aus einer MySQL-Datenbank laden.
Die Frage die ich mir jetzt stelle ist,
wie kommt die GUI am besten an die Informationen dran,
wie nutzt man Vererbung, generische Klassen am besten aus?

Meine Anwendung soll Kunden, Artikel und Aufträge verwalten können (hinzufügen, ändern und löschen).

Diese Daten stehen alle in einer separaten Tabelle.

Ich hätte jetzt mehrere Ansätze die Daten zu laden,
gibt es für so einen Fall schon ein Pattern?

Alle meine Ansätze gehen von einer Verwaltung aus,
diese generische Klasse hat ein Element (Auftrag, Kunde, oder Artikel)
und eine Key (meist Integer / int, wie Rechnugnsnummer, KundenID, ArtikelID).
Die Verwaltung stellt Methoden bereit, welche die Daten in der Datenbank aktualisieren.
(add, delete ...)

Meine erste Idee sieht man grob auf den "Klassendiagramm.pdf"
Ist gibt eine generische Klasse Verwaltung, und Subklassen Artikelverwaltung, Kundenverwaltung und Auftragsverwaltung.
Diese Klasse erben von Verwaltung die Methoden und können diese zu Not ergänzen oder anpassen (z.b. canAdd).


Meine zweite Idee wäre nur eine Abhängigkeit, siehe "Klassendiagramm2.pdf"
dass die Verwaltung nur benutzt wird (wie eine ArrayList) und Auftragsverwaltung die Methoden selbst deklariert.
Ich finde aber dass die drei Verwaltungsklassen sich dann ziemlich ähneln würden (Codeduplizierung).

Hat wer vielleicht noch eine bessere Idee?

PS.: Ich weiß, die Diagramme sind vielleicht nicht ganz sauber, aber ich wusste nicht wie ich sonst die Anbindung an die GUI und DB darstellen sollte.
 

DerEisteeTrinker

Bekanntes Mitglied
ich persönlich würde eine AbstractFactory (<< DesignPattern) empfehlen, da kannst du jede tabelle einzeln abbilden und die statements zusammenfassen und zur Trennung der schichten einen BusinessDelegate zwischen GUI und der AbstractFactory
 

Dragonfire

Bekanntes Mitglied
Also wäre das eher meine erste Idee?
Die Verwaltung ist die abstrakte Fabrik
und die Unterverwaltungen die konkreten Fabriken mit dem jeweiligen Produkt
(Artikel, Auftrag, Rechnung)?
 

DerEisteeTrinker

Bekanntes Mitglied
genau

und bevor die Ergebnisse aus der der Datenbank an die GUI gehen noch eine Klasse bauen, die die Arbeit an die richtigen Klassen weiterleitet.

GUI ==> BusinessDelegate ==> Datenbank-Klasse ==> Datenbank

viel Spaß beim Schreiben :toll:
 

DerEisteeTrinker

Bekanntes Mitglied
Hat den entscheidenden vorteil, dass du so sehr schnell umsteigen kannst. sowohl bei der GUI als auch bei der DB. Die GUI ruft immer die Methoden des BusinessDelegate auf und weiß von der Implementierung der Datenbank-Klassen nichts und wenn sich die Datenverarbeitung ändert, dann interessiert es die GUI keine Bohne, weil das alles der BusinessDelegate übernimmt
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M MySQL Anbindung und Abfrage an die Datenbank Datenbankprogrammierung 2
S Anbindung zur mysql von mit Swing und AWT Datenbankprogrammierung 22
H Datenbank-Anbindung Java/MySQL Datenbankprogrammierung 2
B DB Anbindung über Tomcat Datenbankprogrammierung 16
F Oracle Oracle JDBC Anbindung unter Glassfish 3.1.2 Datenbankprogrammierung 3
S Anbindung einer Datenbank an Java Datenbankprogrammierung 7
D DB-Anbindung Zuweisung fehlgeschlagen Datenbankprogrammierung 37
H MySQL Programm mit Datenbank anbindung Datenbankprogrammierung 26
T Anbindung von Hibernate an JSP Datenbankprogrammierung 6
Z Anbindung von Datenbank an Java Datenbankprogrammierung 2
P DB-Anbindung Datenbankprogrammierung 13
P MySQL-Anbindung Datenbankprogrammierung 4
A MySQL Anbindung - Exception Handling Datenbankprogrammierung 2
F MYSQL Anbindung Datenbankprogrammierung 14
R oracle Anbindung geht im jar nicht Datenbankprogrammierung 8
A Problem mit der Anbindung zur hsqldb Datenbankprogrammierung 18
G anbindung an sqlserver unter windows Datenbankprogrammierung 7
G Anbindung zu JDBC Datenbankprogrammierung 6
K MySQL Anbindung Datenbankprogrammierung 2
B Wie kann ich eine Jtable mit Inhalt einer SQL Abfrage füllen Datenbankprogrammierung 14
D Zweckmäßigkeit einer Schlüsseltabelle Datenbankprogrammierung 4
TH260199 Java-Programm. Probleme bei der Umsetzung von einer Kontaktverwaltung. Datenbankprogrammierung 7
S Variable in main soll mit der generierten Zahl aus einer Methode ausgefüllt werden Datenbankprogrammierung 3
N Oracle SQL - Nächst kleineren Namen2 zu einem Namen aus einer Tabelle Datenbankprogrammierung 3
T Datenbank auf einer Webseite aus einer Exceltabelle erstellen Datenbankprogrammierung 5
D JPA gleiche methode funktioniert an einer Stelle, an der anderen nicht Datenbankprogrammierung 3
nonickatall MySQL Auf neue Datensätze in einer Datenbank reagieren Datenbankprogrammierung 5
B Wie kopieren ich eine Spalte von einer Tabelle in eine andere Tabelle SQLite durch java code? Datenbankprogrammierung 26
P Verbindung zu einer Access Datenbank per Eclipse oder Intellij Datenbankprogrammierung 0
pkm Frage zu Encodingproblem bei einer Datenbankanbindung Datenbankprogrammierung 1
B Frage bei einer SQL Query Datenbankprogrammierung 3
F Mapping einer SQL Abfrage in eine Klasse Datenbankprogrammierung 4
J In einer bestimmten Spalte suchen mit Suchfeld (MS SQL) Datenbankprogrammierung 7
S Verbindung von einer Excel Datei zu Java Datenbankprogrammierung 2
J Sql Anfrage nach einer Zeile beenden Datenbankprogrammierung 6
J Welche Kriterien haben Einfluss auf die Geschwindigkeit einer Datenbank ? Datenbankprogrammierung 4
S Anmelden an einer msql datennbank Datenbankprogrammierung 1
F Auslesen einer .dbf-Datei, Zuordnung Index Datenbankprogrammierung 0
ralfb1105 Oracle Zwei ojdbc Driver in einer Applikation? Datenbankprogrammierung 13
Dimax MySQL Maximale Datenlänge für eine Spalte einer Datenbank in java ermitteln Datenbankprogrammierung 15
Dimax MySQL 10 höchsten Werte aus einer Tabelle ermitteln Datenbankprogrammierung 30
L Speicherverbrauch Java Anwendung mit einer Datenbankanbindung Datenbankprogrammierung 19
temi Wie kann ich "Class" in einer DB speichern? Datenbankprogrammierung 2
F UPDATE - Befehl nur in einer Zeile Datenbankprogrammierung 11
I Oracle Wie ermitteln, welche Benutzer-(!)Tabellen in einer DB sind? Datenbankprogrammierung 1
DaCrazyJavaExpert Derby/JavaDB Wert einer Variable in der Datenbank direkt auf 1 setzten. Datenbankprogrammierung 71
D MySQL Suche nach Max Value in einer Tabelle Datenbankprogrammierung 7
W Daten aus einer Datei von einem VServer auslesen Datenbankprogrammierung 1
F MySQL Wie kann ich in Java Datensätze aus einer MySQL Datenbank gezielt in einzelne Arrays schreiben? Datenbankprogrammierung 9
F Java Objekte in einer Datenbank speichern Datenbankprogrammierung 4
MrSnake Hilfe bei erstellen einer DB Datenbankprogrammierung 12
M Wie übergebe ich Datenbankobjekte aus einer sql-Datenbank einer Java Klasse bzw. Instanz Datenbankprogrammierung 7
Z Finde den Fehler: Daten aus einer Access-Datenbank lesen Datenbankprogrammierung 12
D Aktualisierung einer ListView mit Daten aus MySQL-DB Datenbankprogrammierung 5
E Wie kann man mit einer ID-Spalte über eine Parameterübergabe auf eine Seite verweisen? Datenbankprogrammierung 17
E Warum funktioniert das Erzeugen einer View nicht? Datenbankprogrammierung 1
E Kann man in einer if-Bedingung auch SELECT-Statements überprüfen? Datenbankprogrammierung 23
E Was sind die Vorteile von DB2 im Gegensatz zu einer Oracle-Datenbank? Datenbankprogrammierung 5
E Wie geschieht der konzeptueller Entwurf einer Datenbank Datenbankprogrammierung 1
I SQLite Objekt speichern einer Serialisierter Klasse Datenbankprogrammierung 1
D HSQLDB INSERT INTO in einer For Schleife mit selber ID, machbar? Alternative? Datenbankprogrammierung 7
I Inhalt einer hsqldb anzeigen Datenbankprogrammierung 1
J Realisierung einer DB in Combi mit Java Datenbankprogrammierung 13
Androbin [Serializing] Mehrere Objekte in einer einzigen Datei speichern Datenbankprogrammierung 1
S Auswahl einer Datenbank Datenbankprogrammierung 0
M Derby/JavaDB Speicherplatz einer Zeile bestimmen Datenbankprogrammierung 0
P JPA in einer größeren Java SE Anwendung Datenbankprogrammierung 0
R MySQL Blob aus DB auslesen und einer Tabelle ausgeben Datenbankprogrammierung 7
C H2 Syntax fehler beim erstellen einer Tabelle Datenbankprogrammierung 4
L MySQL Uhrzeit-Format innerhalb einer Tabelle Datenbankprogrammierung 8
2 MySQL Daten aus einer Array auslesen und MySQL Statment erstellen. Datenbankprogrammierung 5
S Derby/JavaDB Probleme beim anlegen einer embedded DB Datenbankprogrammierung 13
E Daten einer SQL-Datenbank aus Combobox in labels schreiben Datenbankprogrammierung 6
M Problem beim Erstellen einer Query Datenbankprogrammierung 7
L Datenbankabfrage mit einer Range Datenbankprogrammierung 3
H ResultSet is closed tritt bei JSF aber nicht bei einer Java-Applikation auf Datenbankprogrammierung 10
eskimo328 Datenbankverbindung ohne Passwort im Quelltext bei einer offline Anwendung Datenbankprogrammierung 14
C unverständliches DB Problem (Es ist kein temporärer Systemtabellenbereich mit einer ausreichenden..) Datenbankprogrammierung 5
A Oracle Update Befehl in Datenbank anhand einer Schleife Datenbankprogrammierung 8
Kenan89 Oracle Daten einer Tabelle in Array speichern Oracle Datenbankprogrammierung 10
S 2 Tabellen zu einer zusammenführen, INSERT INTO Fehler Datenbankprogrammierung 5
D Sperrverfahren in einer Datenbank Datenbankprogrammierung 6
B Feld in einer @Entity als Text speichern Datenbankprogrammierung 5
G Oracle Hibernate M:N-Beziehung mit nur einer vorhandenen Tabelle Datenbankprogrammierung 5
M MySQL Auto-Increment einer custom formatted id? Datenbankprogrammierung 2
F Oracle ResultSet zu einer HashMap<Integer, String[]> Datenbankprogrammierung 6
M DB: Mehrere Zeilen in einer Zeile zusammenführen Datenbankprogrammierung 10
D Probleme bei der Erzeugung einer Tabelle Datenbankprogrammierung 15
D Frage zu potenziellen Leerzeichen in einer Datenbank Datenbankprogrammierung 5
H datantyp einer variable ermittel mit sql Datenbankprogrammierung 3
I Zugriff auf Datenbank nach Erstellen einer Executable Jar Datei verweigert Datenbankprogrammierung 10
S Problem beim Anlegen einer Tabelle Datenbankprogrammierung 5
S Wie überprüfe ich ob die Instanz einer Connection gerade werwendet wird? Datenbankprogrammierung 4
M Ausgabe der Rows mit höchstem Wert X einer Gruppe y,z ? Datenbankprogrammierung 2
L Derby/JavaDB Fehler beim Erstellen einer Tabelle Datenbankprogrammierung 2
turmaline [Hibernate] @OneToOne: Löschen einer referenzierten Instanz Datenbankprogrammierung 2
S ResultSet einer Datenbankabfrage - Nullpointer Exception Datenbankprogrammierung 13
B Aktuellen Stand der Datensätze einer Datenbank anzeigen Datenbankprogrammierung 9
B Die Anzahl der Datensaetze einer Datenbank anzeigen Datenbankprogrammierung 2
T Ablage von Benutzereinstellungen in einer DB Datenbankprogrammierung 7

Ähnliche Java Themen

Neue Themen


Oben