Wer anfängt, sich mit Java zu beschäftigen, wird vermutlich erst mal auf den Seiten von Sun und/oder Oracle landen und dort von einer schier unüberschaubaren Flut von Standards, Spezifikationen, Tutorials und Abkürzungen überfallen... Mir hat damals erst ma Wikipedia weiter geholfen - für einen groben Überblick - da liest man den Artikel "generell über Java", klickt sich dann zu Java SE...

 

Java EE (Enterprise Edition) - Java EE

Hier fängt der Spaß eigentlich erst an...

Um mit Java EE zu entwickeln, bedarf es eines Application Servers. Ich nutze bisher für meine Anwendungen den frei erhältichen Glassfish-Server. Dieser übernimmt - vergleichbar mit einem Web-Server - die Aufgabe, Anfragen anzunehmen und an "geeignete" Stellen weiter zu leiten und auszuführen. Mit den derzeit auf dem Markt verfügbaren IDEs (bspw. IntelliJ IDEA oder Eclipse) kann man frei vor sich hin programmieren und auf Knopfdruck eine Anwendung auf dem Server 'deployen' - einmal verstanden und eingerichtet - recht einfach...

Java Persistence API (JPA)

Um Typsicherheit zu wahren (Java legt viel Wert auf Typsicherheit...) und nicht mit ggf. komplexen, fehleranfälligen SQL-Statments auf Datenbanken zuzugreifen, wurden Datenbank-Abstraktions-Schichten eingeführt. So kann man über Objekte auf Tabellen und Datensätze zugreifen, ebenso kann man über Methoden Datensätze suchen und erhält als Ergebnis für einen Datensatz idealierweise direkt ein Java-Objekt.

JavaServer Faces (JSF)

Quasi eine "Erweiterung" von HTML, welche es per XML ermöglicht, Code zu schreiben, aus dem dann HTML-Code generiert wird. Eigentlich "nur" eine bessere Template-Engine. In der zugehörigen Model-Klasse stellt man die Daten zur Verfügung, wleche dann die Daten anzeigen.

Natürlich sind hier auch Schleifen und Bedingungen möglich. Auch für alle anderen HTML-Tags gibt es weitere "Befehle", welche HTML erzeugen.

Enterprise Java Beans (EJB)

Nun - eine weitere "Erweiterung"...

Java Spring

Da, wo Java EE "aufhört", fängt es dann mit dem Framework Java Spring an... CDI u.v.a.m...