Datenmodell / Struktur der Anwendung

Tort-E

Mitglied
Hallo zusammen!

Ich bin gerade dabei eine Anwendung zu schreiben, die Daten in eine Datenbank schreibt und auch ausliest ...
Die Anwendung möchte ich gerne nach dem MVC Modell aufbauen und stehe nun vor folgenden Problem(en):
Im Model wird ja die Kommunikation zur Datenbank sichergestellt. Das heißt, dass ich hier quasi die Entitäten der DB abbilde. Nehmen wir mal an ich habe eine Tabelle T_Mitarbeiter und eine Tabelle T_Abteilung. Die Tabellen sind in einer 1:n Beziehung verknüpft (T_Mitarbeiter (n) <---- (1) T_Abteiung). Die Javaklasse "Mitarbeiter" sieht so aus:
Code:
public class Mitarbeiter {
private int personalnummer;
private String name;
private int abtID;

public Mitarbeiter() {}
public Mitarbeiter(int persnr, String name, int abt) {
....
}

Die Klasse hat nun die Aufgabe mir mit einem Select alle Mitarbeiter mit den dazugehörigen Abteilungen abzufragen. Die Daten möchte ich an einen Controller weiterleiten, der in der View eine Tabelle erstellt und die Daten zur Anzeige bringt. In der View soll der User auf einen Tabelleneintrag (Objekt) klicken können und Detailinfos erhalten. Ich möchte meine Klassen jetzt nicht für jede Abfrage jedesmal um weitere Attribute erweitern.
Gibt es andere Möglichkeiten?
 
Zuletzt bearbeitet:

thet1983

Top Contributor
ich würde mir eine methode schreiben die einen vector zurückgibt
diese rufe ich dann auf und übergebe es dem tablemodel
 

Joose

Top Contributor
Ich möchte meine Klassen jetzt nicht für jede Abfrage jedesmal um weitere Attribute erweitern.
Gibt es andere Möglichkeiten?

Ich verstehe hier dein Problem leider nicht, das müsstest du genauer erläutern.
Geht es dir darum das du bei neuen Spalten in der Tabelle nicht immer die Klasse anpassen willst?

Zusätzlich (hat nichts mit dem eigentlichen Problem zu tun):
Im Model wird ja die Kommunikation zur Datenbank sichergestellt.

Ja laut Definition soll sich das Model die Daten halten. Ich finde es aber sehr unschön wen die Modelklasse selbst den DB Zugriff erledigt und das ResultSet verarbeitet etc.
Dazu sind Repositories besser geeignet (angestoßen vom Controller). Die Modelklassen bilden nur die Geschäftobjekte mit den Daten.

Das heißt, dass ich hier quasi die Entitäten der DB abbilde. Nehmen wir mal an ich habe eine Tabelle T_Mitarbeiter und eine Tabelle T_Abteilung. Die Tabellen sind in einer 1:n Beziehung verknüpft (T_Mitarbeiter (n) <---- (1) T_Abteiung).

Vermeide Prefixe bei Tabellennamen! Solange du nicht ein großes komplexes System in der DB abbilden willst wo man einen Namen möglicherweise öfters brauchen könnte reichen einfache Tabellennamen aus.
Die SQL Befehle sind so flüssiger zu schreiben und zu lesen :)

Worüber man oft streitet: Ich verwende immer die Mehrzahl als Tabellenname -> Da eine Tabelle je mehrere Abteilungen hat und ich "selektiere von den Abteilungen"
 

Tort-E

Mitglied
Ja laut Definition soll sich das Model die Daten halten. Ich finde es aber sehr unschön wen die Modelklasse selbst den DB Zugriff erledigt und das ResultSet verarbeitet etc.
Dazu sind Repositories besser geeignet (angestoßen vom Controller). Die Modelklassen bilden nur die Geschäftobjekte mit den Daten.

Kannst Du mir vllt. hierzu ein kleines Beispiel geben?
Ich hatte vorhin die Idee, dass der Controller einen SQL Befehl an das Model übergibt und dann ein ResultSet zurückbekommt.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Frage zum Entwurf / json-Datenmodell Allgemeine Java-Themen 8
N Thread Sicherheit im komplexen Datenmodell Allgemeine Java-Themen 7
L Datentypen Datenmodell anpassen? Allgemeine Java-Themen 7
K Verständnisprobleme bei Observer-Pattern mit größerem Datenmodell Allgemeine Java-Themen 32
Karl_Der_Nette_Anfänger Hat wer ne Lösung für verknüpfte Postleitzahlen? (Baum/Wurzel Struktur) Allgemeine Java-Themen 11
J Ordner und Datei Struktur einer War Datei Allgemeine Java-Themen 1
K Größere Java-Projekte: Struktur Allgemeine Java-Themen 13
S Maven Jars dynamisch laden / Plugin-Struktur erstellen Allgemeine Java-Themen 14
A Best Practice Java - eine Art Plugin-Struktur Allgemeine Java-Themen 3
Sin137 Struktur der Klassen & Package Allgemeine Java-Themen 2
B OOP Schwierigkeiten bei Klassendiagrammen/OOP-Struktur Allgemeine Java-Themen 5
F Passende Struktur gesucht Allgemeine Java-Themen 6
MQue Java Enterprise Struktur Allgemeine Java-Themen 2
G Klassen & Paket Struktur Allgemeine Java-Themen 4
ARadauer Package Struktur Allgemeine Java-Themen 3
K Struktur eines Chats Allgemeine Java-Themen 2
M Jar-Struktur untersuchen Allgemeine Java-Themen 3
B Frage zur HashMap Struktur Allgemeine Java-Themen 7
K Java Anwendung machen Anleitung Allgemeine Java-Themen 5
P JavaFX Anwendung beendet sich selbst nur als Jar Allgemeine Java-Themen 40
OSchriever Externe Anwendung beenden Allgemeine Java-Themen 41
I Eine Anwendung so gut wie möglich beschützen Allgemeine Java-Themen 9
J exe Anwendung CPU-/Speicherverbauch Allgemeine Java-Themen 5
alderwaran Hoher Sys-Load bei Multithreaded Anwendung Allgemeine Java-Themen 8
S Anwendung die alle Abhaengigkeiten einer Library listet..? Allgemeine Java-Themen 5
P Methoden Anwendung der allMatch()-Methode Allgemeine Java-Themen 5
D Anwendung öffnet hinter Taskleiste Allgemeine Java-Themen 7
I Anwendung auf Netzlaufwerk von mehreren Usern gleichzeitig nutzbar. Allgemeine Java-Themen 3
A Garbage Collector in NetBeans vs. exe Anwendung Allgemeine Java-Themen 33
D Java Anwendung mit dll File Allgemeine Java-Themen 5
B JAVA Prozesse in einer eigenen Anwendung laufen lassen Allgemeine Java-Themen 9
D RMI Einfache Chat-Anwendung mit RMI Allgemeine Java-Themen 0
J Jasper ireport - wieso beendet die Anwendung wenn ich die Preview schließe Allgemeine Java-Themen 1
E Anwendung verhält sich unter Mac anders als Unter Windows. Allgemeine Java-Themen 4
S Anwendung zum ausrechnen der Differenz von zwei Tagen Allgemeine Java-Themen 9
B Web-Anwendung funktioniert mit Java 1.8, aber nicht mit Java 1.7 (auf Client) Allgemeine Java-Themen 5
L Stack overflow bei einer endrekursiven Funktion (Anwendung: Spezialform des Package Merge) Allgemeine Java-Themen 4
P Anwendung läuft nur mit JDK Allgemeine Java-Themen 2
D Java-Anwendung mit DB, GUI, etc. Allgemeine Java-Themen 3
D OOP Design Pattern für GUI - Datenbank Anwendung Allgemeine Java-Themen 1
F Unlimited Strength Policy. Frage Verbreitung der Anwendung Allgemeine Java-Themen 1
T Bot für Mql-Anwendung Allgemeine Java-Themen 10
F Java Anwendung Remote starten geht nicht Allgemeine Java-Themen 0
D neuen Prozess starten und anwendung beenden. Allgemeine Java-Themen 3
L Input/Output IO Anwendung Allgemeine Java-Themen 6
M Suche Framework/API für Monitoring-Anwendung Allgemeine Java-Themen 3
M Problem beim Starten der Anwendung Allgemeine Java-Themen 3
C Anwendung läuft nicht auf Mac OS X Allgemeine Java-Themen 2
M Java Anwendung ausführen Allgemeine Java-Themen 5
eskimo328 Swing Client Anwendung für MAC OS (Update Routine) Allgemeine Java-Themen 6
M Process wird gestoppt und nach beenden der Anwendung fortgeführt Allgemeine Java-Themen 4
J Interpreter-Fehler Anwendung startet nicht Allgemeine Java-Themen 5
W Framework für RichClient Anwendung? Allgemeine Java-Themen 4
D Mini Webserver für GUI Anwendung Allgemeine Java-Themen 5
Ollek MVC - Anwendung auf mein Projekt Allgemeine Java-Themen 18
U (Land-)Karten in Java Anwendung einbinden (GoogleMaps/OpenStreetMap) Allgemeine Java-Themen 7
S "Katalog"-Anwendung in Java eine gute Idee? Allgemeine Java-Themen 12
S Wie eine verteilte Anwendung in die Cloud? Allgemeine Java-Themen 4
E Anwendung nutzt plötzlich nicht mehr 100% CPU Allgemeine Java-Themen 2
R Geht das? JRE 1.4 global, 1.6.20 nur für eine Anwendung? Allgemeine Java-Themen 9
K Anwendung bringt JAVA Speicherfehler Allgemeine Java-Themen 11
C Java Anwendung nur einmalig starten Allgemeine Java-Themen 10
eskimo328 Offline/Online Web-Anwendung, Datensynchronisation etc. Allgemeine Java-Themen 9
E Anwendung starten Allgemeine Java-Themen 3
W Java Anwendung in HTML Allgemeine Java-Themen 2
DEvent Aktuelle Uhrzeit per Anwendung Allgemeine Java-Themen 4
C Idee für Anwendung/ Bücher Allgemeine Java-Themen 8
Y Anwendung starten(JAR) - Entscheidung Konsole oder Swing Allgemeine Java-Themen 5
P Java Anwendung mehr Speicher zur Verfügung stellen?? Allgemeine Java-Themen 3
C Kontextmenü erweitern und mit Java Anwendung verknüfen. Allgemeine Java-Themen 3
7 Problem mit webbasierter Anwendung Allgemeine Java-Themen 6
D Java Anwendung in der Shell Allgemeine Java-Themen 5
D Versuch Server - Client anwendung Allgemeine Java-Themen 9
T Welcher Server? JSP und Client-Anwendung Allgemeine Java-Themen 4
M Anwendung des MVC Konzepts Allgemeine Java-Themen 7
R Ausführbare Java Anwendung Allgemeine Java-Themen 27
A Java-Anwendung "richtig" schließen ohne JVM zu beenden Allgemeine Java-Themen 2
B In Anwendung jar file bauen Allgemeine Java-Themen 2
A Webspace für Grails-Anwendung Allgemeine Java-Themen 3
M WebStart Anwendung nicht dauerhaft Cachen Allgemeine Java-Themen 3
A An alle Cracks: Anwendung beenden mit ShutdownHook? Allgemeine Java-Themen 13
D Anwendung startet im Remote Desktop nicht Allgemeine Java-Themen 14
S Testen einer Anwendung durch klicken von Koordinaten Allgemeine Java-Themen 7
M SMS aus Desktop-Anwendung verschicken Allgemeine Java-Themen 8
G Unterschied Enterprise Anwendung und Web Anwendung Allgemeine Java-Themen 30
? Swing Anwendung aus Konsole starten Allgemeine Java-Themen 7
G Weboberfläche für Java Anwendung? Allgemeine Java-Themen 10
Y ProcessBuilder, Prozess wird gestartet, aber Anwendung nicht Allgemeine Java-Themen 5
S jar aus anwendung heraus ausführen Allgemeine Java-Themen 2
J Konsolen Anwendung mit while(true) Allgemeine Java-Themen 6
-MacNuke- Frage zu einer 3-Tier Anwendung Allgemeine Java-Themen 9
M Anwendung nur einmal starten / Zeichen in String zählen Allgemeine Java-Themen 7
F Hilfe beim Starten einer Java Anwendung unter Windows gesuch Allgemeine Java-Themen 8
L Java 1.5 - Anwendung unter 1.6 JRE sehr langsam geworden Allgemeine Java-Themen 8
B getResourceAsStream - standalone Anwendung vs. Web-Anwendung Allgemeine Java-Themen 2
J I18n einer existierenden Anwendung Allgemeine Java-Themen 2
C Java-Anwendung beenden Allgemeine Java-Themen 3
G Auslesen mit welcher Java-Version Anwendung kompiliert wurde Allgemeine Java-Themen 2
C Anwendung nur einmal Starten Allgemeine Java-Themen 11
Z Uralt-Applet in JFrame Anwendung konvertieren Allgemeine Java-Themen 12

Ähnliche Java Themen


Oben