Hallo,
ich muss eine Hausarbeit nach MVC Design durchführen und bin mir nicht sicher, wo ich welche Methoden hineinschreiben muss.
Vorweg habe ich 3 Pakete (model, controller, view) erstellt.
In meinem View Paket ist eine Klasse, die den Startbildschirm der Anwendung darstellt.
Im Paket model habe ich eine Klasse Util die Methoden beinhaltet, um bestimmte Datenbankabfragen durchzuführen.
Nun habe ich auf der Startmaske eine Checkbox eingefügt, mit der ich auf diese Klasse Uitl direkt zugreife.
Nach meinem Dafürhalten verletze ich doch damit das MCV Prinzip, da ich direkt von der View aufs Model zugreife oder ?
Ich bin der Meinung das die View auf den Controller zugreift, der dann auch die DB Zugriff hat.
Wie muss denn nun meine Methode im Controller aussehen ?
So sieht meine Methode im Model aus:
Und so der bisherige Aufruf aus der View:
Wie gesagt, direkter Zugriff ist halt nicht so toll, aber wie kann man das besser machen?
gruß
dutch
ich muss eine Hausarbeit nach MVC Design durchführen und bin mir nicht sicher, wo ich welche Methoden hineinschreiben muss.
Vorweg habe ich 3 Pakete (model, controller, view) erstellt.
In meinem View Paket ist eine Klasse, die den Startbildschirm der Anwendung darstellt.
Im Paket model habe ich eine Klasse Util die Methoden beinhaltet, um bestimmte Datenbankabfragen durchzuführen.
Nun habe ich auf der Startmaske eine Checkbox eingefügt, mit der ich auf diese Klasse Uitl direkt zugreife.
Nach meinem Dafürhalten verletze ich doch damit das MCV Prinzip, da ich direkt von der View aufs Model zugreife oder ?
Ich bin der Meinung das die View auf den Controller zugreift, der dann auch die DB Zugriff hat.
Wie muss denn nun meine Methode im Controller aussehen ?
So sieht meine Methode im Model aus:
Code:
public static Vector<Integer> getAlleAngebotsNr() throws Exception {
Vector<Integer> angbt = new Vector<Integer>();
OracleDB db = getOracleDB();
ResultSet rs1 = db.doQuery("select * from Artikel");
while (rs1.next()){
angbt.add(rs1.getInt("artikelnr"));
}
rs1.close();
return angbt;
}
Und so der bisherige Aufruf aus der View:
Code:
JComboBox cmbBoxA = new JComboBox (Util.getAlleAngebotsNr());
Wie gesagt, direkter Zugriff ist halt nicht so toll, aber wie kann man das besser machen?
gruß
dutch