Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Tomcat支持哪些技术?_Java_Tomcat_Jakarta Ee - Fatal编程技术网

Java Tomcat支持哪些技术?

Java Tomcat支持哪些技术?,java,tomcat,jakarta-ee,Java,Tomcat,Jakarta Ee,我读了很多关于GlassFish应用服务器的文章,说它支持整个JavaEE6规范。但是Tomcat支持哪一个呢 我知道Tomcat是一个JSP/Servlet容器,但我在web上看到了关于“JSF和Tomcat”、“Hibernate和Tomcat”以及更多的文章 tomcat可以使用这些技术吗:EJB、JSF、JPA、Hibernate、Spring等等?tomcat不是EJB容器,因此您应该使用成熟的JavaEE 6服务器(如Glassfish、Websphere、Weblogic等) To

我读了很多关于GlassFish应用服务器的文章,说它支持整个JavaEE6规范。但是Tomcat支持哪一个呢

我知道Tomcat是一个JSP/Servlet容器,但我在web上看到了关于“JSF和Tomcat”、“Hibernate和Tomcat”以及更多的文章


tomcat可以使用这些技术吗:EJB、JSF、JPA、Hibernate、Spring等等?

tomcat不是EJB容器,因此您应该使用成熟的JavaEE 6服务器(如Glassfish、Websphere、Weblogic等)

Tomcat可以使用Spring/Hibernate,因为这只需要相关的JAR和configs/context定义。JSF也是如此


JPA是一个抽象规范,Hibernate(以及其他规范)是这个规范的一个实现,因此答案是“是的,它可以在Tomcat上实现”。

Tomcat作为一个基本的servletcontainer,实际上只提供了API,而API是现成的。但是,您可以在
/web-INF/lib
文件夹中以JAR文件的形式提供、、等以及一些必要的配置文件

这只是一个故事,因为您不能仅仅添加“一些JAR”来让它工作,但事实上,如果您修改服务器核心,您也可以在Tomcat上放置EJB容器。这基本上也是我们所做的。如果你打算去java EE,你不妨考虑一下。 另见:

Tomcat根据其版本提供支持:

JSTL 1.0 : Servlet 2.3 : JSP 1,2 (tomcat 4)
JSTL 1.1 : Servlet 2.4 : JSP 2.0 (tomcat 5)
JSTL 1.2 : Servlet 2.5 : JSP 2.1 (tomcat 6)
tomcat默认不提供EJB支持的说法已经得到了回答。 包括这个问题

要在tomcat6中包含JSF1.2,有一个

编辑: 不幸的是,这里没有单一的依赖关系(/兼容性)矩阵。 JPA是一种API,由i.g.Hibernate实现。找出哪个版本匹配应该不难。是的,它们可以与Tomcat(除此之外)Spring一起使用

我读了很多关于GlassFish应用服务器的文章,说它支持整个JavaEE6规范。但是Tomcat支持哪一个呢

Tomcat(自从JavaEE5以来,它不再是Servlet规范的RI)不支持任何现成的JavaEE6API。在最新版本中,Tomcat 6附带:

  • Servlet 2.5
  • JSP 2.1/EL 2.1
GlassFish的“web”部分实现:

  • Java Servlet3.0
  • JavaServerFaces2.0
  • JavaServerPages2.2/expressionlanguage2.2
  • JavaServerPages标准标记库(JSTL)1.2
tomcat能否使用这些技术:EJB、JSF、JPA、Hibernate、Spring等等

您可以通过将它们打包到应用程序中来使用其中一些(有一个很好的摘要):

  • EJB 3.1:不,在编写这个过程时没有独立的EJB 3.1容器(如果您考虑使用EJB,使用一个真正的java EE服务器,Tomcat与一个独立的EJB容器不是等价的,特别是从事务管理器的角度来看)。
  • JSF2.0和EL2.2:是的,可能会有些痛苦
  • CDI 1.0:是的,可能
  • BeanValidation1.0:是的,JSF2.0和JPA是可能的
  • JPA2.0:是的,有可能,但您必须自己获得EntityManager并自己管理事务(或者使用第三方容器,如Spring)
但让我强调一下:无论您将向Tomcat添加什么,您都不会得到Java EE 6容器的等价物,即使我们只是比较一下Web概要文件实现(比如:没有EJB3.1Lite,没有JTA1.1,没有无描述符的应用程序等等)


如果您有选择的话,我的建议是使用GlassFish v3 Web概要文件并采用Java EE 6。

我发现tomcat页面上的表很有用。 第页:


感谢您的精彩回答。我找到了将EclipseLink(JPA 2.0)与Tomcat一起使用的链接: