Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

© 2012 TravelTainment Einführung in Spring Web MVC Seminarvortrag Sebastian Hesse

Ähnliche Präsentationen


Präsentation zum Thema: "© 2012 TravelTainment Einführung in Spring Web MVC Seminarvortrag Sebastian Hesse"—  Präsentation transkript:

1 © 2012 TravelTainment Einführung in Spring Web MVC Seminarvortrag Sebastian Hesse

2 © 2012 TravelTainment Motivation  Webanwendungen werden immer wichtiger  Bsp. Onlineshops  Programmiersprachen stellen nur Grundlagen für Client- Server-Kommunikation bereit  Werkzeuge zwar sehr umfangreich  Möglichkeiten nur bedingt alltagstauglich für Entwickler  Frameworks berücksichtigen Best Practices  Für Java: Spring-Framework weit verbreitet

3 © 2012 TravelTainment Inhalt  Servlets  Grundlagen  Implementierung  Nachteile  Spring Framework  Konzept  Konfiguration  Vorteile  Spring Web MVC  Funktionsweise  Vorteile zu Servlets  Schlusswort

4 © 2012 TravelTainment Servlets - Grundlagen  Spezifikation für abstrakte Anfrage-Antwort-Zyklen  Referenzimplementierung für HTTP verfügbar  Servlets sind einfach Java-Klassen mit Interface Servlet  Bestandteil einer Java-Webanwendung  Servlets werden beim Start geladen  Existieren bis zum Herunterfahren der Webanwendung

5 © 2012 TravelTainment Servlets - Grundlagen  Servlet-Container verwaltet mehrere Webanwendungen  Webanwendung hat festgelegten Servlet- Kontext  Servlets greifen auf Servlet-Kontext gemeinsam zu  Konfiguration der Web- anwendung per XML

6 © 2012 TravelTainment Servlets - Implementierung  HttpServlet als Elternklasse am weitesten verbreitet Eigene Implementierung Referenz- implementierung Spezifikation Servlet Http Servlet Example Servlet Example Servlet2 Generic Servlet Example Servlet3

7 © 2012 TravelTainment Servlets - Implementierung  Auslesen von Parametern und des Sessionobjekts  Bsp.: /page?action=read

8 © 2012 TravelTainment Servlets - Nachteile  Weiterleiten an andere Methoden umständlich  Boilerplate-Code => Code-Wiederholungen, schlecht zu warten

9 © 2012 TravelTainment Servlets - Nachteile 1. HTTP-Body auslesen 2. JSON- Konvertierung 3. Exception- Handling

10 © 2012 TravelTainment Servlets - Nachteile  Antwortgenerierung sehr aufwendig  Boilerplate-Code tritt wieder auf Spring Web MVC schafft Abhilfe

11 © 2012 TravelTainment Inhalt  Servlets  Grundlagen  Implementierung  Nachteile  Spring Framework  Konzept  Konfiguration  Module  Spring Web MVC  Funktionsweise  Vorteile zu Servlets  Schlusswort

12 © 2012 TravelTainment Spring - Konzept  Java-Framework zur Unterstützung von Best Practices und Applikationsentwicklung

13 © 2012 TravelTainment Spring - Konzept  Spring Container enthält Spring-Beans  Klassen greifen auf Spring-Beans zu Bea n 1 Bea n 2 Bea n 3 Bea n 4 Bean 1 Bean 2 Service -Klasse

14 © 2012 TravelTainment Spring - Konfiguration  Spring-Konfiguration in XML-Datei  Konfiguration per Annotation @Autowired

15 © 2012 TravelTainment Spring - Module

16 © 2012 TravelTainment Inhalt  Servlets  Grundlagen  Implementierung  Nachteile  Spring Framework  Konzept  Konfiguration  Module  Spring Web MVC  Funktionsweise  Vorteile zu Servlets  Schlusswort

17 © 2012 TravelTainment Spring Web MVC - Funktionsweise  Model-View-Controller (MVC) mit Frontcontroller  MVC => Explizite Trennung der Schichten & Aufgaben

18 © 2012 TravelTainment Spring Web MVC - Funktionsweise  Controllerklassen und -methoden werden mit Pfad konfiguriert => Request-Mapping

19 © 2012 TravelTainment Spring Web MVC – Vorteile zu Servlets  Parameterverarbeitung  DispatcherServlet stellt der Methode diverse Übergabeparameter bereit  Keine Bindung an HttpServlet nötig

20 © 2012 TravelTainment Spring Web MVC – Vorteile zu Servlets  Weitere Übergabeparameter:  HttpServletRequest, HttpServletResponse  HttpSession  Model,  …

21 © 2012 TravelTainment Spring Web MVC – Vorteile zu Servlets 1 Annotation + 1 Konfiguration

22 © 2012 TravelTainment Spring Web MVC – Vorteile zu Servlets  Vorbereitete Daten werden meist in Templates (= mit Platzhaltern vorbereitete HTML-Seiten) eingebunden  Weit verbreitet: JavaServerPages (JSP)

23 © 2012 TravelTainment Spring Web MVC – Vorteile zu Servlets  Model für Antwortgenerierung vorbereiten  Map enthält Objekte für das Model  Model wird an Template weitergegeben  Controllermethode gibt nur den Namen des Templates an  ViewResolver -Bean findet korrektes Template

24 © 2012 TravelTainment Spring Web MVC – Vorteile zu Servlets  Zugriff per Java Expression Language (Java EL)  Bestmögliche Schichtentrennung

25 © 2012 TravelTainment Spring Web MVC – Vorteile zu Servlets  Alternative Formate zur Kommunikation:  XML, JSON  Notwendig: Konfiguration von HttpMessageConverter- Implementierungen  Beispiel JSON:  Antwort zu JSON umwandeln 1.Flexibilität 2.Einfachheit 3.Erweiterbarkeit

26 © 2012 TravelTainment Inhalt  Servlets  Grundlagen  Implementierung  Nachteile  Spring Framework  Konzept  Konfiguration  Module  Spring Web MVC  Funktionsweise  Vorteile zu Servlets  Schlusswort

27 © 2012 TravelTainment Schlusswort  Servlets bieten gute Grundlage zum Verarbeiten von Client-Anfragen und –Antworten  Standardmäßiges Reagieren auf Anfrage(parameter) resultiert in Boilerplate-Code  Spring unterstützt Entwickler bei wiederkehrenden Abläufen und bietet zentrale Konfiguration von Klassen an  Spring Web MVC baut darauf auf  Verbirgt und automatisiert Vorgänge, wie bspw. Adressierung von Pfaden zu Klassen und Methoden  Bietet Schnittstellen zur Erweiterung der Ein- und Ausgabe

28 © 2012 TravelTainment Schlusswort Große Webanwendungen Anbindung an weitere Services Spring Einfache Anfragen Einfache Verarbeitung Servlets

29 © 2012 TravelTainment Quellen 1. Sun Microsystems, Inc. Java Servlet Specification 3.0, Rod Johnson, Juergen Hoeller, Keith Donald. Spring Framework Reference Documentation, Aleksa Vukotic, James Goodwill. Apache Tomcat 7, Apress, Martin Fowler , Zugegriffen am Gary Mak, Josh Long, Daniel Rubio. Spring Recipes – A problem solution approach, Apress, 2010

30 © 2012 TravelTainment Fragen?

31 © 2012 TravelTainment Vielen Dank!


Herunterladen ppt "© 2012 TravelTainment Einführung in Spring Web MVC Seminarvortrag Sebastian Hesse"

Ähnliche Präsentationen


Google-Anzeigen