本文由牛旦教诲原创发布。作者:老崔。
后续会持续发布一些TomEE干系原创文章。
若有转载请注明来源,或联系本头条号作者。
参考来源:https://www.tomitribe.com/blog/tomee-webprofile-vs-tomee-microprofile-vs-tomee-vs-tomee-plume/
1 引子作为TomEE和其他项目的支持公司,Tomitribe从客户那里得到了很多技能和架构方面的问题。常常听到的一个问题是,“不同的TomEE发行版有什么不同?” ——无论是开拓者选择还是企业选择,都会面对这个问题,那么这篇短文将回答这个问题。
实在,据Tomitribe,TomEE项目已经发展了20来年。在根本层面上,它是将Jakarta EE Web Profile(以前的Java EE)干系技能添加到一个完全的Apache Tomcat发行版中来实现的。在这篇文章中,将更详细地阐明Tomcat与TomEE的结合利用情形。
2 TomEE发布版总览TomEE有四种发行版:TomEE WebProfile、TomEE MicroProfile、TomEE和TomEE PluME。TomEE WebProfile的目标是完全的Jakarta EE WebProfile。其他的也一样,但是添加了对MicroProfile、JMS、JAX-WS、Jakarta连接器的支持,并帮助那些将运用程序从Glassfish移植到TomEE的人。
TomEE不同版本的总览图
有图有原形。这里可以看到Jakarta Web Profile是所有发行版的根本,每个发行版都添加了更多的功能。
TomEE和TomEE PluME之间的紧张差异是,TomEE PluME添加了EclipseLink,并更换了Apache MyFaces,而用Eclipse Mojarra实现来支持JSF规范。
3.TomEE WebProfile 版TomEE WebProfile是Jakarta EE WebProfile的目标实现。如果您只须要Jakarta EE Web Profile中定义的技能,并且不会从Eclipse Glassfish搞迁移,那么该当选择这种的TomEE版本。
TomEE WebProfile包含你在Jakarta EE WebProfile实现中所期望的所有内容(可以查看上一篇内容:企业级Java标准体系及产品级做事器TomEE),包括:
支持的企业级技能规范和实现(功能特性)
4. TomEE MicroProfile版TomEE MicroProfile增加了对MicroProfile 1.3的全面支持,为实现Java微做事供应了一个完全而健壮的平台。如果除了Jakarta EE Web Profile之外,您还须要对MicroProfile的支持,那么这便是您的办理方案,也便是你可以选择这个版本。
以下是TomEE MicroProfile支持的MicroProfile规范:
TomEE MicroProfile增加功能特性
5. TomEE+ (Plus)版TomEE+包含了TomEE MicroProfie的所有功能,并增加了其余三个规范:JAX-WS、JEE连接器和JMS。如果您将基于SOAP的web做事与XML通报或Java做事(JMS)一起利用,那么这便是适宜您的办理方案。它还供应了对完全的Jakarta连接器规范的支持,因此您可以插入您可能须要的任何Jakarta连接器。
以下是TomEE+添加的APIs列表:
TomEE+增加功能特性
6. TomEE PluME版TomEE PluME(发音为plume)帮助组织把项目从Eclipse Glassfish迁移到Apache TomEE。如果你没有从Glassfish迁移到TomEE的须要,你可以忽略这个分布。
TomEE PluME供应了TomEE+供应的所有功能,但在两个关键的APIs,即JPA和JSF,有所不同。虽然TomEE+对JSF利用Apache MyFaces,对JPA利用Apache OpenJPA,但TomEE PluME对JSF利用Eclipse Mojarra,并添加EclipseLink作为JPA的选项。
TomEE PluME和TomEE+之间的差异非常主要,由于JSF和JPA配置的某些方面并没有通过它们的规范得到办理,而且根据实现的不同而有所不同。TomEE PluME许可现有的Glassfish运用程序移植到TomEE,而无需变动JSF或JPA组件的配置。
下面是添加到TomEE PluME中的Eclipse库:
TomEE PluME增加功能特性
7. 总结请记住,如果您从Glassfish迁移到TomEE,您将须要利用TomEE PluME,它与TomEE+险些完备相同,除了JSF和JPA的实现。如果你没有从Glassfish迁移到TomEE的项目或操持,那么你可以忽略TomEE PluME。你可选择TomEE WebProfile,TomEE MicroProfile和TomEE+。
无论您选择的TomEE的发行版本如何,在它们之间迁移都一点也不难。你要么添加你须要的做事,例如从TomEE WebProfile到TomEE MicroProfile,要么删除你不须要的东西,例如从TomEE+到TomEE WebProfile。