Was ist J2EE?
J2EE steht für Java 2 Platform Enterprise Edition. Es ist eine Sammlung von Spezifikationen für Enterprise-Anwendungen. Ziel ist die Standardisierung serverseitiger Java-Entwicklung.
Was ist Jakarta EE?
Jakarta EE ist der Nachfolger von J2EE. Es wird von der Eclipse Foundation gepflegt. Seitdem wurden die Pakete von javax.* auf jakarta.* umgestellt.
Was ist der Unterschied zwischen J2EE und Jakarta EE?
J2EE war die ursprüngliche Oracle-Plattform. Jakarta EE ist die moderne Weiterentwicklung. Funktional sind sie ähnlich, aber Namespace und Governance unterscheiden sich.
Was sind typische Komponenten von Jakarta EE?
Dazu gehören Servlet, JPA, CDI, EJB und JAX-RS. Jede Komponente erfüllt eine klar definierte Aufgabe. Zusammen bilden sie die Enterprise-Plattform.
Was ist ein Application Server?
Ein Application Server implementiert Jakarta EE Spezifikationen. Er stellt Infrastruktur wie Transaktionen und Security bereit. Beispiele sind WildFly oder Payara.
Was ist der Unterschied zwischen Application Server und Servlet Container?
Ein Servlet Container unterstützt nur Web-Komponenten. Ein Application Server bietet zusätzlich EJB, JPA, CDI und mehr. Er ist umfangreicher.
Was ist ein Servlet?
Ein Servlet verarbeitet HTTP-Anfragen serverseitig. Es ist die Basis von Web-Anwendungen. Servlets laufen im Container.
Was ist der Lebenszyklus eines Servlets?
Das Servlet wird initialisiert, verarbeitet Requests und wird zerstört. Der Container steuert diesen Prozess. Entwickler implementieren entsprechende Methoden.
Was ist JAX-RS?
JAX-RS ist die API für RESTful Web Services. Sie nutzt Annotationen wie @Path und @GET. Sie vereinfacht REST-Entwicklung.
Was ist der Unterschied zwischen JAX-RS und Spring MVC?
JAX-RS ist Teil von Jakarta EE. Spring MVC ist ein Framework. Beide lösen ähnliche Probleme mit unterschiedlichem Ökosystem.
Was ist CDI?
CDI steht für Contexts and Dependency Injection. Es ermöglicht Dependency Injection in Jakarta EE. Es ist vergleichbar mit Spring DI.
Was ist Dependency Injection in Jakarta EE?
Abhängigkeiten werden vom Container bereitgestellt. Klassen erzeugen ihre Dependencies nicht selbst. Das verbessert Wartbarkeit.
Was ist ein Managed Bean?
Eine Managed Bean wird vom Container verwaltet. Der Container kümmert sich um Lifecycle und Injection. Sie ist Bestandteil von CDI.
Was ist EJB?
EJB steht für Enterprise JavaBeans. Sie kapseln Business-Logik. Früher zentral, heute seltener genutzt.
Was sind Stateless Session Beans?
Sie besitzen keinen Client-Zustand. Sie sind leicht skalierbar. Der Container verwaltet Instanzen.
Was sind Stateful Session Beans?
Sie halten Zustand pro Client. Sie sind schwerer skalierbar. Sie werden seltener eingesetzt.
Was ist Message-Driven Bean?
Sie reagieren auf Nachrichten. Häufig in JMS-Kontexten genutzt. Sie sind asynchron.
Was ist JMS?
JMS steht für Java Message Service. Es ermöglicht asynchrone Kommunikation. Es wird für Messaging-Systeme genutzt.
Was ist JPA?
JPA ist die Spezifikation für ORM. Sie mappt Java-Objekte auf Datenbanktabellen. Hibernate ist eine Implementierung.
Was ist der EntityManager?
Der EntityManager verwaltet Entitäten. Er steuert Persistenz und Lifecycle. Er ist zentral in JPA.
Was ist ein Persistence Context?
Er ist der Arbeitsbereich des EntityManagers. Er enthält verwaltete Entitäten. Änderungen werden automatisch synchronisiert.
Was ist Transaktionsmanagement in Jakarta EE?
Der Container verwaltet Transaktionen. Entwickler nutzen Annotationen wie @Transactional. Das vereinfacht Konsistenz.
Was ist deklaratives Transaktionsmanagement?
Transaktionen werden über Annotationen definiert. Der Container übernimmt die Umsetzung. Entwickler schreiben weniger Boilerplate.
Was ist Bean Validation?
Bean Validation prüft Daten anhand von Annotationen. Beispiele sind @NotNull oder @Size. Sie erhöht Datenqualität.
Was ist JSF?
JSF steht für JavaServer Faces. Es ist ein MVC-Framework für Web-UIs. Es wird heute seltener eingesetzt.
Was ist der Unterschied zwischen JSF und modernen Frontends?
JSF rendert serverseitig. Moderne Frontends sind clientseitig. SPA-Frameworks sind flexibler.
Was ist Security in Jakarta EE?
Jakarta EE bietet standardisierte Security APIs. Rollen und Authentifizierung werden konfiguriert. Der Container setzt Regeln durch.
Was ist Role-Based Security?
Zugriffe werden über Rollen gesteuert. Methoden oder URLs werden geschützt. Das erhöht Sicherheit.
Was ist JTA?
JTA steht für Java Transaction API. Sie koordiniert Transaktionen über mehrere Ressourcen. Sie ist wichtig für verteilte Systeme.
Was ist eine WAR-Datei?
WAR ist ein Web-Archiv. Es enthält Web-Anwendungen. Es wird im Server deployt.
Was ist eine EAR-Datei?
EAR ist ein Enterprise-Archiv. Es kann mehrere Module enthalten. Es wird für große Anwendungen genutzt.
Was ist der Unterschied zwischen WAR und JAR?
WAR ist für Web-Apps. JAR ist ein allgemeines Java-Archiv. Beide können ausführbar sein.
Was ist MicroProfile?
MicroProfile ist eine leichtgewichtige Jakarta-Erweiterung. Es fokussiert Microservices. Es ergänzt Jakarta EE sinnvoll.
Was ist der Unterschied zwischen Jakarta EE und Spring?
Jakarta EE ist standardisiert. Spring ist ein Framework. Spring bietet mehr Flexibilität.
Wann sollte man Jakarta EE einsetzen?
Bei standardkonformen Enterprise-Systemen. Wenn Vendor-Unabhängigkeit wichtig ist. Große Organisationen profitieren.
Wann ist Jakarta EE ungeeignet?
Für kleine Anwendungen. Wenn schnelle Prototypen nötig sind. Spring Boot ist dort oft einfacher.
Wie testet man Jakarta EE Anwendungen?
Man nutzt Integrationstests mit Containern. Tools wie Arquillian helfen. Tests sind oft schwergewichtiger.
Was sind typische Nachteile von Jakarta EE?
Höherer Setup-Aufwand. Weniger Flexibilität als Spring. Lernkurve kann steil sein.
Zuletzt geändertvor einem Monat