Prima di tutto, "J2EE" è un'abbreviazione obsoleta, ora viene semplicemente chiamato "Java Enterprise Edition" o Java EE.
Contrariamente al contenitore servlet (ad esempio Tomcat), i server applicazioni Java EE "completi" contengono anche un contenitore EJB. EJB sono Enterprise Java Beans e puoi leggere molto su di loro ad esempio here (capitolo IV). Gli EJB sono ora nella versione 3.2 (Java EE 7 e Java EE 8), le versioni precedenti sono 3.1 (Java EE 6) e 3.0 (Java EE 5); tuttavia la più grande differenza è tra v2 e v3.
Gli EJB sono progettati per mantenere una logica aziendale dell'applicazione. Ad esempio, il bean di sessione stateless può calcolare qualcosa o rappresentare un servizio Web o qualsiasi altra cosa l'applicazione deve fare. I bean basati sui messaggi possono essere ascoltati nelle code dei messaggi, pertanto sono utili se si desidera una comunicazione asincrona. I bean singleton garantiscono un'istanza per bean, ecc.
Per quanto riguarda il tipo di file, EJB è contenuto in un file .jar, applicazione Web in un file .war e, se si desidera unirli in una singola applicazione, sarebbe il file .ear ("archivio aziendale").
Accanto a EJB, "pieno" application server si occupa anche sulle transazioni, la sicurezza, le risorse JDBC ... Mi raccomando di usarlo su un servlet container, ma i benefici venire con la complessità in modo da avere per trascorrere una ragionevole quantità di tempo per imparare come comportarsi ad es Websphere (Payara e WildFly sono molto più semplici e sono i miei preferiti). JBoss e Weblogic sono anche molto popolari, e se hai familiarità con Tomcat dai un'occhiata a TomEE.
fonte
2013-06-19 06:50:26
+1 per la risposta completa, sto cercando un confronto tra i server delle applicazioni che hai citato. per quanto riguarda la complessità/facilità di integrazione, ecc. – mel3kings
@ melt321 Felice di aiutare. Per quanto riguarda il confronto, ho lavorato solo con Websphere e Glassfish, quindi consiglierò altri articoli: 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 –