代码之家  ›  专栏  ›  技术社区  ›  Cedric H.

JavaSpring需要Tomcat中的一些EE功能。Spring是雅加达EE框架吗?

  •  0
  • Cedric H.  · 技术社区  · 4 年前

    在过去的几天里,我试图了解Java生态系统,查看组件(JVM、JRE、JDK、SE、EE等)、许可和其他方面。

    据我所知,Jakarta EE(以前的Java EE,J2EE)是Java SE之上的API,具有许多企业级特性和许多(大多数不推荐使用)web技术。Spring有类似的目标,但有不同的方法,并且运行在“标准”JavaSE上。

    但是Tomcat呢?Tomcat被定义为Jakarta EE功能的实现。我知道TomEE是Tomcat的“超集”,具有更多Jakarta EE功能。

    尽管如此,Spring(需要/需要)Tomcat作为运行时。这是否意味着Spring使用Jakarta EE功能?你能澄清一下这些区别吗?

    0 回复  |  直到 4 年前
        1
  •  3
  •   Olaf Kock    4 年前

    Tomcat 10提供JakartaEE,但没有JEE。 低于10的版本实现JEE,但没有JakartaEE。 Here's the overview

    据我所知,spring对JEE有效,但对JakartaEE无效(在撰写本答案时)。所以如果你想使用 公猫 使用spring、pick版本9(截至今天)或其他JEE容器。

        2
  •  2
  •   Ken Chan    4 年前

    Spring并没有实现大部分JakartaEE/JavaEE规范。实现JavaEE中定义的JSR的Spring项目之一是Spring-batch(请参阅 this )。

    相反,Spring主要提供与JavaEE中精心选择的单个规范集成的支持,以允许开发人员使用Spring编程模型来实现这些规范(请参阅 this 了解更多详细信息。)

    Tomcat是Servlet API的实现,这是JakartaEE/JavaEE中包含的规范之一。对我来说,Spring为它提供的最有用和最现代的支持是Spring-boot。它允许使用可嵌入的Tomcat打包应用程序,这样我们就可以简单地将应用程序作为JAR部署和运行,而无需单独安装Tomcat服务器并将WAR部署到它。