G
Guest
Gast
Hallo!
Ich arbeite mich grad in JSF ein und hab mal ne logische Frage.
Ich hab das mal ins allgemeine Forum gepostet, weil es nicht unbedingt um JSF es, sondern dadurch die Frage nur entstand.
JSF baut ja auf dem MVC-Modell auf, d.h. für mich:
View:
JSP-Seiten mit JSF-Tags
stellt Daten aus dem Modell dar
leitet Nutzeraktionen (Klick auf Button etc.) an den Controller weiter
Model:
Bean, die beispielsweise auf Datenbank mit Datensätzen drin zugreift
behält Daten für View bereit
kennt weder Controller noch View
Controller:
Faces Servlet
beinhaltet die Intelligenz der Anwendung -> Ablaufsteuerung
wertet entgegengenommene Nutzeraktionen aus, leitet sie an Bean / View weiter
Controller registriert sich bei der View -> View kennt Controller
Hab ich das so erstmal richtig?
So jetzt stellt sich mir die Frage, wo so richtig der Unterschied zur 3tier-Architektur ist. Die wenigen englischen Quellen verwirren mich irgendwie nur noch mehr.
Bisher hab ich nur verstanden, dass es die Präsentations-, Logik-, und Datenhaltungsschicht gibt und das für mich quasi identisch zu MVC klingt.
Präsentationsschicht:
Darstellung Daten
Zugriff z.B. über HTTP auf Logikschicht
zuständig für Verarbeiten Nutzeraktionen
Datenhaltungsschicht:
z.B. relationale Datenbank mit Datensätzen
Logikschicht:
Datenverarbeitung -> Anwendungslogik
beinhaltet Verarbeitungsmechanismen
Zugriff auf Datenhaltungsschicht z.B. über JDBC
Der einzige Unterschied, der sich mir ergibt, ist, dass bei MVC das Model für die Datenhaltung und Verarbeitung notwendig ist, es nicht unbedingt eine Datenbank geben muss und der Controller quasi nur zwischen allen vermittelt, weiterleitet und sonst nix macht.
Bei der 3tier-Architektur ist die Datenhaltungsschicht die Datenbank selbst und die Logikschicht ne Mischung aus Controller und Model.
Bitte helft mir
Ich arbeite mich grad in JSF ein und hab mal ne logische Frage.
Ich hab das mal ins allgemeine Forum gepostet, weil es nicht unbedingt um JSF es, sondern dadurch die Frage nur entstand.
JSF baut ja auf dem MVC-Modell auf, d.h. für mich:
View:
JSP-Seiten mit JSF-Tags
stellt Daten aus dem Modell dar
leitet Nutzeraktionen (Klick auf Button etc.) an den Controller weiter
Model:
Bean, die beispielsweise auf Datenbank mit Datensätzen drin zugreift
behält Daten für View bereit
kennt weder Controller noch View
Controller:
Faces Servlet
beinhaltet die Intelligenz der Anwendung -> Ablaufsteuerung
wertet entgegengenommene Nutzeraktionen aus, leitet sie an Bean / View weiter
Controller registriert sich bei der View -> View kennt Controller
Hab ich das so erstmal richtig?
So jetzt stellt sich mir die Frage, wo so richtig der Unterschied zur 3tier-Architektur ist. Die wenigen englischen Quellen verwirren mich irgendwie nur noch mehr.
Bisher hab ich nur verstanden, dass es die Präsentations-, Logik-, und Datenhaltungsschicht gibt und das für mich quasi identisch zu MVC klingt.
Präsentationsschicht:
Darstellung Daten
Zugriff z.B. über HTTP auf Logikschicht
zuständig für Verarbeiten Nutzeraktionen
Datenhaltungsschicht:
z.B. relationale Datenbank mit Datensätzen
Logikschicht:
Datenverarbeitung -> Anwendungslogik
beinhaltet Verarbeitungsmechanismen
Zugriff auf Datenhaltungsschicht z.B. über JDBC
Der einzige Unterschied, der sich mir ergibt, ist, dass bei MVC das Model für die Datenhaltung und Verarbeitung notwendig ist, es nicht unbedingt eine Datenbank geben muss und der Controller quasi nur zwischen allen vermittelt, weiterleitet und sonst nix macht.
Bei der 3tier-Architektur ist die Datenhaltungsschicht die Datenbank selbst und die Logikschicht ne Mischung aus Controller und Model.
Bitte helft mir