Veranstaltungsort

Frankfurt am Main

Inhouse-Seminar

Haben Sie Interesse an einer individuellen Inhouse-Schulung zu diesem Thema? Nehmen Sie einfach Kontakt mit uns auf.

»Anfrage für Inhouse-Seminar

Ansprechpartner

Ihr Ansprechpartner: Mirko Hillert

Mirko Hillert
Tel.: +49 (0)331-282-2225
Fax: +49 (0)331-282-2228
E-Mail: mhillert@entwickler-akademie.de

End To End Java EE 6 Anwendungen entwickeln - Konkurrenzlos einfach, günstig und wartbar

Trainer

Dauer

3 Tage

Seminarbeschreibung

10-20 kB WARs mit JSF 2, EJB 3.1, JPA 2.0 und Bean Validation sowie erweiterte CDI (JSR-299) Injection, inkrementelle Deployments in Millisekunden, RESTful Services über JSON oder XML, Cron-ähnliche Timer, leichtgewichtige Aspekte und das alles ohne zusätzliche Frameworks, Bibliotheken oder Abhängigkeiten - Java EE 5 war die Revolution der Geschäftslogikschicht, mit Java EE 6 lassen sich Anwendungen ganzheitlich, von der UI bis zu der Integration von Legacy-Resourcen, noch effizienter und schneller entwickeln. Damit es nicht bei leeren Versprechungen bleibt, werden wir in diesem Workshop einige Java EE 6 Anwendungen gemeinsam entwickeln. Nicht nur entwickeln sondern den gesamten Zyklus betrachten: Wir werden zunächst die gesamte Entwicklungsumgebung mit Datenbank, dem Applikationsserver in wenigen Minuten installieren. Danach werde ich die Prinzipien der Java EE 5 und 6 (Convention Over Configuration, Dependency Injection, Inversion Of Control, Embeddable Container) mit einer Reihe von einfachen "Hello World" Beispielen vorstellen.

Anschliessend werden wir gemeinsam eine - oder gleich mehrere Anwendungen entwerfen, entwickeln, deployen, debuggen, profilen, unit-testen, stress-testen und reviewen. Die Fragen der Teilnehmer werden in Echtzeit beantwortet - Wünsche/Änderungen werden soweit wie möglich berücksichtigt.

Seminarinhalt

Dieser Workshop hat den Fokus auf Real World Projekte und die Praxis. Es werden auch die folgenden Technologiethemen besprochen:

  • Server- und herstellerunabhängig entwickeln
  • Migration von J2EE und Java EE 5 Anwendungen auf Java EE 6
  • RESTFul Services, oder JSR-311
  • Anbindung von RIAs - am Beispiel von Java FX und AJAX
  • Data-binding mit Validierung und das Zusammenspiel mit Model View Presenter
  • Domain Driven Design mit …EJB 3.1s, CDI und JPA 2.0
  • Flexible Konfiguration der (EJB 3.X) Komponenten
  • Integration mit EJB 2.0 und anderen "Legacy" Frameworks
  • JSR-330 und JSR-299
  • Wie viel Dependency Injection braucht man tatsächlich in Real World?
  • Sicherstellung der Konsistenz mit lokalen, globalen Transaktionen, Isolation Levels
  • nosql Datenbanken und Java EE 6
  • Effiziente Anbindung von JSF 2 und Wicket Anwendungen
  • Hochskalierbare Anwendungen mit Java EE 6 - wenn Transaktionen nicht mehr möglich sind
  • Impedance Mismatch zwischen der Domain Driven Design und SOAs
  • EJB 3 vs. "POJOs" und was bedeutet eigentlich "leichtgewichtig"
  • Architekturen, Best Practices und Anti-Patterns
  • Partitionierung/Modularisierung der Anwendungen und ab wann ist es nicht mehr wartbar
  • Technische Details wie: Dynamische/polymorphe Abfragen, Optimistische vs. pessimistische Locks, Caching, Replikation (auch im Cluster), Massen-Updates, Monitoring (JSR-77 und JMX)
  • Effiziente und pragmatische Dokumentation der Ergebnisse mit UML 2.X
  • Modularisierung im Hinblick aus OSGi, Java 7 Modulen, Maven und Java EE 6 Packaging
  • Unit Testing, Continuus Integration, automatisierte Builds, Profiling, Debugging, Fehlersuche und alles was man sonst noch in Projekten für effiziente Entwicklung benötigt
  • Java EE 6 lässt sich auch gut mit vi oder emacs entwickeln. In diesem Workshop werden wir jedoch auf NetBeans 6.8, intelliJ oder Eclipse zurückgreifen

Teilnehmervoraussetzungen

  • Motivierte, besser passionierte, Java/Java EE -Entwickler mit Projekterfahrung (mit Betonung der Motivation :-)
  • Java EE-Grundkenntnisse
  • Können Sie die folgenden Fragen beantworten: Wofür braucht man überhaupt Transaktionen (Beispiel/UseCase)? Warum haben Sie EJB 2 nicht gemocht? Warum haben Remote Entity Beans nicht funktioniert? Was ist eine Session Bean (besser noch der Unterschied zwischen stateful und stateless Session Beans)? Was ist ein Servlet? Ist SOAP effizient und performant? Sicherer Umgang mit einer IDE Ihrer Wahl (z.B. vi, emacs, IntelliJ, NetBeans, Eclipse, usw.)

Technische Voraussetzungen

  • Laptops/PC mit mindestens 1 GB-Speicher. Besser 2 oder 4 GB
  • Ein CD-Laufwerk bzw. USB-Port (für die Installation der Umgebung)

Zusätzliche Hinweise

Jeder Teilnehmer erhält eine CD mit der kompletten Umgebung, Slides und Werkzeugen. Sie erhalten die komplette Umgebung von der JDK, IDE über Datenbank bis zum Applikationsserver. Diese wird in der ersten halben Stunde gemeinsam installiert.