Zunächst ist "J2EE" eine veraltete Abkürzung, es heißt jetzt einfach "Java Enterprise Edition" oder Java EE.
Im Gegensatz zum Servlet-Container (z. B. Tomcat) enthalten "vollständige" Java EE-Anwendungsserver auch einen EJB-Container. EJB sind Enterprise Java Beans und Sie können viel über sie lesen, zum Beispiel here (Kapitel IV). EJBs sind jetzt in Version 3.2 (Java EE 7 und Java EE 8), frühere Versionen sind 3.1 (Java EE 6) und 3.0 (Java EE 5); Der größte Unterschied ist jedoch zwischen v2 und v3.
EJBs wurden entwickelt, um eine Geschäftslogik Ihrer Anwendung zu erhalten. Zum Beispiel kann statuslose Session-Bean etwas berechnen oder einen Web-Service darstellen oder was auch immer Ihre Anwendung tun muss. Message-driven Beans können Nachrichtenwarteschlangen abhören, daher sind sie nützlich, wenn Sie eine asynchrone Kommunikation wünschen. Singleton-Beans garantieren eine Instanz pro Bean usw.
In Bezug auf den Dateityp wird EJB in eine .jar-Datei, Webanwendung in eine WAR-Datei gepackt, und wenn Sie sie in einer einzigen Anwendung mischen möchten, wäre das die .ear-Datei ("Unternehmensarchiv").
Neben EJBs kümmert sich der "vollständige" Anwendungsserver auch um Transaktionen, Sicherheit, JDBC-Ressourcen ... Ich würde es sehr empfehlen, es über einen Servlet-Container zu verwenden, aber die Vorteile kommen mit der Komplexität, so dass Sie eine ausgeben müssen angemessene Zeit, um zu lernen, wie man zB mit Websphere (Payara und WildFly sind viel einfacher und sind meine Favoriten). JBoss und Weblogic sind auch ziemlich populär, und wenn Sie mit Tomcat vertraut sind, betrachten Sie TomEE.
+1 für die vollständige Antwort, ich bin auf der Suche nach einem Vergleich der Anwendungsserver, die Sie erwähnt haben. in Bezug auf Komplexität/Leichtigkeit der Integration etc. – mel3kings
@ melt321 Froh, zu helfen. Bezüglich des Vergleichs habe ich nur mit Websphere und Glassfish gearbeitet, also werde ich andere Artikel empfehlen: http://hwellmann.blogspot.com/2011/06/java-ee-6-server-comparison.html, http://stackoverflow.com/questions/217827/which-is-the-best-open-source-application-server, http://stackoverflow.com/questions/1224822/websphere-vs-weblogic –