java - Tomcat 是否实现或运行 Java Servlet 和 JavaServer Pages (JSP) 规范?

标签 java jsp tomcat servlets specifications

我正在学习 Apache Tomcat,但我不理解下面一行中的术语实现。我在想 Tomcat 运行 Java Servlet 和 JavaServer Pages (JSP)。

Tomcat implements the Java Servlet and the JavaServer Pages (JSP) specifications from Sun Microsystems

Tomcat 是否实现运行Java Servlet 和 JavaServer Pages (JSP)?

最佳答案

JavaServerPages (JSR 245)Java Servlet (JSR 315)是 Java 规范

它们就是这样:一组指南,这些指南被加入到一份文档中,其中充满了关于它们是什么、它们应该如何表现等的文字。

现在这是您问题的答案:供应商采用这些规范来制作实现这些规范的库或产品,从而成为其实现。这与您实现接口(interface)的方式差不多。

因此

Tomcat implements Java Servlet and the JSP specifications

是正确的描述方式。现在 Tomcat 有自己的 HttpServlet 实现,但您不必担心,因为您的类只是扩展它。

当然,您自己的 servlet 和 JSP 将在 Tomcat 上运行,但它们会扩展自己的实现。同样,他们将在例如 Jetty 上运行,在那里他们将扩展类的不同实现。

请注意,这些类(HttpServlet,...)位于以 javax. 而不是 java. 开头的包中。区别是关键,我建议你看看:javax vs java package

另一个广为流传的例子是 JPA:https://jcp.org/en/jsr/detail?id=338及其许多实现,如 Hibernate、EclipseLink、OpenJPA、DataNucleus 等。

关于java - Tomcat 是否实现或运行 Java Servlet 和 JavaServer Pages (JSP) 规范?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23538066/

相关文章:

javascript - 如何获取被点击元素的ID

java - apache tomcat 出现奇怪的错误?

java - 如果 C3P0 无法获得数据库连接,Tomcat 将挂起

java - 在 Android 上更改文件的 SELinux 上下文无法正常工作

static - 使用 PowerMock 的模拟静态 : mock java. lang

java - 如何明智地对特定字段的数据进行分组?

java - 有没有办法在Java中记录失败的Oracle登录名的用户名?

java - 每次选择发生变化时添加 ListSelectionListener 调用

java - 如何向 Bytebuddy 中的新方法添加动态数量的带注释参数?

java - 保护 Java Web 应用程序不被复制