1. Einführung
Die PDF-Datei dieses Dokuments ist verfügbar |HIER|.
Die Beispiele des Dokuments sind unter |HIER| verfügbar.
Dieses Dokument basiert auf einem früheren Dokument aus dem Jahr 2010 mit dem Titel „Einführung in Java EE mit NetBeans 6.8 und dem GlassFish-Server v3“. Es enthält im Wesentlichen folgende Änderungen:
- Der Abschnitt JSF (Java Server Faces) wird in einem separaten Dokument behandelt: „Einführung in Java Server Faces, PrimeFaces und PrimeFaces Mobile“, das unter URL [Einführung in Java Server Faces, PrimeFaces und PrimeFaces Mobile anhand von Beispielen (2012)] verfügbar ist. Darin werden Funktionen der Version 2 von JSF verwendet,
- die Projekte sind Maven-Projekte.
Java EE steht für Java Enterprise Edition. J2EE (Java 2 Enterprise Edition) war die frühere Bezeichnung. J2EE bezeichnet die Java-Technologien, die zur Erstellung von Unternehmensanwendungen mit JDK 1.4 oder früheren Versionen verwendet wurden. Zeitgleich mit der Einführung von JDK 1.5, das zahlreiche Neuerungen in der Java-Sprache mit sich brachte, führte Sun neue Technologien ein, die auf dieser verbesserten Sprache basierten, um Lücken dieser Technologien in J2EE zu schließen. Der Begriff „Java EE 5“ wurde daraufhin verwendet, um die Gesamtheit der Technologien zu bezeichnen, die zur Erstellung einer Unternehmensanwendung mit der Java-Plattform beitragen. Zum Zeitpunkt der Aktualisierung dieses Dokuments ist die neueste Version von Java EE Java EE 6.
Die Bücher von Antonio Goncalves:
- „Java EE 5“, erschienen bei Eyrolles
- „Beginning Java EE 6 Platform with Glassfish 3“ im Apress-Verlag
sind hervorragende Bücher, um die Technologien von Java EE 5 und Java EE 6 kennenzulernen. Alle wichtigen Technologien von Java EE werden darin im Rahmen realistischer Fallstudien behandelt. Der Autor betreibt eine Website [http://www.antoniogoncalves.org], die der Leser gerne besuchen kann.
Das vorliegende Dokument befasst sich mit einigen Technologien von Java EE 5. Darin erstellen wir eine einfache dreischichtige Anwendung [présentation, métier, accès aux données], die in mehreren Versionen vorliegt:
Eine Webanwendung mit den folgenden Technologien:
- Java Server Faces: für die Webschicht
- EJB3 oder Spring: für die Geschäftslogik-Schicht
- EJB3 oder Spring, JPA/Hibernate, JPA/EclipseLink: zur Erstellung verschiedener Datenzugriffsschichten
Eine Client-Server-Anwendung mit folgenden Technologien:
- Swing: für die grafische Client-Schicht mit Spring-Unterstützung
- EJB3 oder Webservice: für die Serverschicht
Bestimmte Java-Technologien wie EE werden nicht vorgestellt, beispielsweise MDB (Message Driven Bean) oder EJB3 (stateful). Um mehr darüber zu erfahren, lesen Sie die Bücher von Antonio Goncalves.
Es gibt weitere Open-Source-Technologien zur Erstellung von dreischichtigen Anwendungen. Eine sehr beliebte Kombination ist Spring (http://www.springframework.org/) / Hibernate (http://www.hibernate.org/). Um dem Leser einen Vergleich zwischen den Technologien EJB3 und Spring zu ermöglichen, gibt es von der oben genannten Anwendung Varianten, in denen Spring anstelle von EJB3 zum Einsatz kommt.
Dieses Dokument ist eine TD (Seminararbeit), die im 5. Studienjahr der Ingenieursschule ISTIA der Universität Angers [http://www.istia.univ-angers.fr] verwendet wird. Dieses TD beschreibt die zu entwickelnde Anwendung, die zu verwendenden Java-Technologien sowie die Quellen, in denen Informationen zu finden sind. Die vorgeschlagene Lösung ist oft sehr genau vorgegeben. Das TD stellt Fragen, auf die es keine Antworten gibt. Es ist Aufgabe des Studierenden, diese zu finden.
Das hier vorgestellte Java-Lernprogramm EE erfordert einen geschätzten Zeitaufwand des Lesers von 50 bis 100 Stunden. Das Dokument enthält viel Code, der das Kopieren und Einfügen ermöglicht. Außerdem werden alle NetBeans-Projekte ausführlich beschrieben. Insgesamt liefert das Dokument die Grundgerüste der Lösungen, und der Studierende wird aufgefordert, bestimmte Details selbst zu ergänzen. Das Dokument kann auch für jemanden nützlich sein, der sich nicht in diesem Umfang engagieren kann oder will. Man kann sich ausschließlich auf die beschriebenen Architekturen konzentrieren und den Code-Teil, der Gegenstand der Fragen ist, außer Acht lassen.
Zur Entwicklung und Ausführung der Anwendung verwenden wir NetBeans (IDE). NetBeans ist ein recht ressourcenintensives Programm: Für komfortables Arbeiten sollten 1 GB RAM vorgesehen werden. Es kann unter der URL [http://www.netbeans.org/] heruntergeladen werden.
Das Dokument bezieht sich auf folgende Kurse:
- Java 5 Persistenz in der Praxis: [Java 5 Persistenz in der Praxis (2007)] – vermittelt die Werkzeuge zum Aufbau der Datenzugriffsschicht mit JPA (Java Persistence API)
- Einführung in die Programmiersprache Java [Einführung in die Programmiersprache Java (1998)] – für Anfänger
- Einführung anhand von Beispielen in Java Server Faces, PrimeFaces und PrimeFaces Mobile [Einführung in Java Server Faces, PrimeFaces und PrimeFaces Mobile anhand von Beispielen (2012)]
Diese Kursunterlagen werden im Folgenden mit den Nummern [ref1], [ref2] und [ref3] bezeichnet.
Serge Tahé, Juni 2012.