我开始研究企业Java,我接下来的书提到它将使用JBoss。Netbeans与Glassfish一起发货。我以前使用过Tomcat。

这三个程序有什么不同?


当前回答

jboss和glassfish包括一个servlet容器(如tomcat),但是两个应用服务器(jboss和glassfish)也提供了一个bean容器(以及一些我想象的其他东西)。

其他回答

Apache tomcat只是一个serverlet容器,它不支持企业Java应用程序(JEE)。JBoss和Glassfish支持JEE应用,但Glassfish比JBoss服务器重得多:参考幻灯片

Tomcat只是一个servlet容器,也就是说,它只实现servlet和JSP规范。Glassfish和JBoss是完整的Java EE服务器(包括EJB、JMS等),Glassfish是最新Java EE 6堆栈的参考实现,但JBoss在2010年还没有完全支持它。

JBoss and Glassfish are basically full Java EE Application Server whereas Tomcat is only a Servlet container. The main difference between JBoss, Glassfish but also WebSphere, WebLogic and so on respect to Tomcat but also Jetty, was in the functionality that an full app server offer. When you had a full stack Java EE app server you can benefit of all the implementation of the vendor of your choice, and you can benefit of EJB, JTA, CDI(JAVA EE 6+), JPA, JSF, JSP/Servlet of course and so on. With Tomcat on the other hands you can benefit only of JSP/Servlet. However to day with advanced Framework such as Spring and Guice, many of the main advantage of using an a full stack application server can be mitigate, and with the assumption of a one of this framework manly with Spring Ecosystem, you can benefit of many sub project that in the my work experience let me to left the use of a full stack app server in favour of lightweight app server like tomcat.

JBoss和Tomcat都是Java servlet应用服务器,但JBoss的功能远不止这些。两者之间的实质区别是JBoss提供了完整的Java企业版(Java EE)堆栈,包括企业JavaBeans和许多其他技术,这些技术对于开发企业Java应用程序的开发人员非常有用。

Tomcat的限制要大得多。可以这样想,JBoss是一个包含servlet容器和web服务器的Java EE堆栈,而Tomcat在很大程度上是一个servlet容器和web服务器。

jboss和glassfish包括一个servlet容器(如tomcat),但是两个应用服务器(jboss和glassfish)也提供了一个bean容器(以及一些我想象的其他东西)。