Apache Struts和Java EE之间的区别?

时间:2009-10-28 10:00:54

标签: java apache servlets struts

我目前正在学习Java EE,或者更具体地说是Servlets和.jsp。在我的编程中,我已经使用模型 - 视图 - 控制器模型来编写我的代码。就我用Google搜索而言,Apache Struts只是像Tomcat这样的服务器。那么,Apache Struts究竟与Java EE中的Java,Java EE和Servlet类有什么关系呢?

3 个答案:

答案 0 :(得分:5)

Struts不是另一台服务器。这是一个应用程序框架。它建立在JSP和Servlet架构之上。所以它是servlet环境的抽象。

使用像Struts这样的框架有一些优点,例如:应用程序的许多常见功能都是预先构建的,因此您无需亲自执行这些功能。验证等功能。它还迫使你按照一些最佳实践哲学工作,在本例中是MVC。

在幕后,Struts实现了一些servlet来完成这项工作。开发人员不必编写servlet。您可以专注于业务逻辑。

答案 1 :(得分:5)

Struts是一个用于制作Web应用程序的库;它本身不是一个服务器。它需要一个JSP / Servlet容器才能工作(例如Tomcat)。请参阅Struts technology primer

Java EE是包含许多技术的规范。 Tomcat不是Java EE服务器,因为它不包含所有这些技术,但已被用作Java EE服务器的一部分,提供Web层。

basic architecture JEE diagram
(来源:sun.com

答案 2 :(得分:1)

Wikipedia

  

Apache Struts是一个开源网站   开发应用程序框架   Java EE Web应用程序。它使用和   将Java Servlet API扩展为   鼓励开发人员采用   模型 - 视图 - 控制器(MVC)   架构。