它是什么?
Servlet-api jar是一个库,其中包含Servlet API规范的接口和类。servlet-api
jar仅包含Servlet规范的接口(API),因此您可以使用它来开发Web应用程序。
在哪里可以买到?
它在以下链接中提供:
http://download.oracle.com/otndocs/jcp/servlet-3.0-fr-eval-oth-
JSpec/
包含/捆绑的位置
Servlet-api.jar是Java EE下载的一部分,因此您可以开发Web应用程序(
FirstServlet如果Java
EE不包含它,则无法编译您的类)。
Servlet容器(例如Tomcat,JBoss,GlassFish等)也包含servlet-
api.jar,否则它们将无法运行您的Web应用程序,此外,它们还包含Servlet API一部分的接口实现。
虽然名称并不总是相同的,并且它甚至可能不作为单独的jar存在,但Servlet API类可能捆绑在另一个jar中。
但是,如果您只想为Servlet容器开发Web应用程序,或者要创建/编写自己的Servlet API实现,则可以下载仅包含Servlet
API的单独jar文件。看这里:
http://download.oracle.com/otndocs/jcp/servlet-3.0-fr-eval-oth-
JSpec/
可移植性
如果您具有Servlet API,则无论它来自何处,都可以编译Web应用程序。编译Web应用程序之后,可以选择将其打包到WAR文件(WAR = Web
ARchive)中,该文件只是一个zip文件,其中包含您的静态文件,已编译的Java类和配置文件(例如)
web.xml。您将能够运行您在任何Servlet容器中编译的Web应用程序(但请继续阅读)。
因此,您对问题5的回答是:
Servlet API有多种版本,而Java EE平台不仅仅具有Servlet API(例如,Enterprise Java
Bean)。但是可以肯定地说,如果仅使用Servlet API,则实现该Servlet API版本的所有Servlet容器都将能够运行您的Web应用程序。
但是,不同Web应用程序的配置文件可能有所不同(它在Servlet API范围之外),因此您应始终检查目标Web应用程序的文档。



