Java EE企业级平台的未来计划:39个重大项目,云原声应用和微服务成为重点

本文涉及的产品
注册配置 MSE Nacos/ZooKeeper,118元/月
云原生网关 MSE Higress,422元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: Java开发者必读,Java EE企业级平台的未来计划:39个重大项目,云原声应用和微服务成为重点。Jakarta EE和GlassFish服务器等39个项目。Java开发者应该了解的知识。

Java开发者必读:大家比较关心的Java企业级平台的发展方向,Oracle无心连战,Java的发展现在靠社区驱动,2017年11月Oracle宣布将把Java EE移交给Eclipse基金会。事实上,因为 Oracle 拥有 “Java” 商标权。按照法律要求,Eclipse 基金会需要对 Java EE 进行更名。
image
Eclipse基金会开源项目主管韦恩•比顿(Wayne Beaton)当时在GitHub上发文称,Java EE项目需要一个新名称,以命名新社区创建的一组规范。2018年12月,经过社区的投票选择,Java EE 被更名为 Jakarta EE。
image
Eclipse Foundation基金会接管了Java EE,Java EE更名为 Jakarta EE。为了方便记忆,我们统称为 Java EE 企业级平台。
目前的会员超过20家大企业,包括IBM、Redhat、Oracle、富士通、微软、SAP等公司。参与企业规范的指定。
image

已经接管了Java EE企业级开发的Eclipse Foundation基金会,列举了构成未来Java EE平台的各种项目,重点强调微服务和云部署。
Java EE一直是关键任务企业应用程序的主要平台。为了加速云原生世界的业务应用程序开发,领先的软件供应商合作将Java EE技术迁移到Eclipse Foundation,他们将在雅加达EE品牌下发展。
Eclipse Foundation基金会,强调了Java EE的目标:支持云原生,微服务的39个项目,以及GlassFish将如何发展。
image
1、39个项目包括:

  1. GlassFish,开源的Java EE的参考实现的应用程序服务器。
  2. ORB,用于GlassFish中使用的CORBA ORB(对象请求代理)的源代码和测试。
  3. Jakarta EE平台,用于生成平台规范并作为Jakarta EE规范的伞形规范。
  4. Jakarta EE TCK(技术兼容性工具包),用于测试Jakarta EE实现是否符合平台规范。
  5. Grizzly New IO API(NIO)框架,用于编写可伸缩服务器,非阻塞模式。
  6. JAXB项目,用于支持XML架构的XML架构(JAXB),以及用于映射XML文档和Java对象的API和工具。
  7. JAX-RS项目,用于支持RESTful Web服务规范的Java API。
  8. JAX-WS项目,用于XML Web服务的API和TCK以及XML消息传递的API。还包括Java平台的Web服务元数据。
  9. 企业安全项目,用于提供身份验证,授权,数据完整性和传输安全性等功能。
  10. Project for Servlet,用于支持Java servlet规范的API。Web应用开发, Servlet与Jakarta EE平台上的Web进行交互。
  11. JCA项目(Jakarta EE Con​​nector Architecture),用于连接企业信息系统的组件的标准体系结构。
  12. 用于稳定EE4J API的项目,包括用于管理,部署,JAX-RPC(基于XML的远程过程调用),用于Web服务和JAXR的API,用于访问XML注册表。
  13. JMS项目(Java消息服务),用于在客户端之间发送消息的中间件API。
  14. OpenMQ,一个面向消息的中间件平台。
  15. Metro,一个Web服务堆栈。
  16. Jersey REST框架。
  17. Mojarra,JavaServer Faces的一个实现,用于Web UI开发。
  18. EJB(Enterprise JavaBeans)项目,用于EJB的API和TCK,支持基于组件的业务应用程序的开发。
  19. Project for JavaMail,包括JavaMail API和用于构建邮件和消息传递应用程序的框架。
  20. Ozark,用于模型 - 视图 - 控制器(MVC)API。
  21. 共同注释项目,用于常见语义概念。
  22. Project for Expression Language,用于使网页能够以托管bean的形式与应用程序逻辑进行通信。
  23. Project for Concurrency Utilities,用于在不影响容器完整性的情况下使用应用程序组件的并发性的API。
  24. 拦截器项目,用于拦截器的API和TCK,用于在Jakarta EE组件和托管类的实例上插入业务方法调用和事件(如生命周期和超时事件)。
  25. 用于JACC的Eclipse项目(容器的Java授权合同),用于Jakarta EE应用程序服务器和授权策略提供程序之间的合同。
  26. Project for JAF(JavaBean Activation Framework),Java的扩展,用于使用服务来确定任意数据的类型,封装访问,发现数据的操作以及实例化bean以执行操作。
  27. JASPIC项目(容器的Java身份验证服务提供程序接口),用于使消息身份验证提供程序能够与客户端或服务器消息处理容器或运行时集成。
  28. JSON Processing项目,用于处理JSON文档的API。
  29. Project for JSON-B,用于将Java对象转换为JSON消息和从JSON消息转换的绑定层。
  30. Yasson,通过框架实现JSON-B参考实现。
  31. JSP(JavaServer Pages)项目,用于JSP的API和TCK,用于帮助开发基于HTML,XML或其他文档类型的网页。
  32. JSTL项目(JavaServer Pages标准标记库),用于将Web服务器的核心功能封装为标记,支持迭代,文档和操作XML文档等任务。此外,还提供了一个框架来将现有标签与JSTL标签集成。
  33. Project for JTA(Java Transaction API),用于指定事务管理器与分布式事务系统中涉及的各方之间的接口,包括资源管理器,身份验证服务器和事务应用程序。
  34. Project for Servlet,用于API和TCK for Java Servlet规范。 Java Servlet与Jakarta EE上的Web进行交互。
  35. Project for JPA(Java Persistence API),用于管理Java环境中的持久性和对象关系映射。
  36. Project for WebSocket,用于将Websockets集成到应用程序中的API。
  37. Tyrus,用于WebSocket API规范参考实现。
  38. Soteria,提供安全API规范参考实现。
  39. EclipseLink,用于读取和写入数据源对象的持久性解决方案,支持关系数据库和XML。

2、Jakarta EE的GlassFish计划
Eclipse Foundation基金会计划今年推出两个版本的GlassFish Java应用服务器,其中一个将通过Eclipse新企业Java规范流程。
GlassFish基于 Sun Microsystems 提供的 Sun Java System Application Server PE 9 的源代码以及 Oracle 贡献的 TopLink 持久性代码。
image

GlassFish历来作为Java EE(企业版)的参考实现,正在重新打上Jakarta EE企业级项目的标签,地位提升。GlassFish也将作为Jakarta EE的参考实现。在2018年第三季度,Eclipse GlassFish 5.1将首次亮相,成为Eclipse Enterprise for Java(EE4J)顶级项目的第一个项目版本。

GlassFish 5.1将被认证为与Java EE 8兼容,企业可以放心使用。在下一季度,Eclipse GlassFish 5.2将到达,经过Jakarta EE 8认证并与Eclipse的企业Java流程兼容。 Eclipse执行董事Mike Milinkovich说,Java EE 8和Jakarta EE 8将“非常相似”,尽管差异很小。 Eclipse Jakarta EE的发布时间表仍有待确定。

3、Jakarta EE的云原生支持计划
根据开发商和利益相关方的反馈,Java EE企业级平台未来的主要目标和重点领域包括:
1.对微服务架构的支持。现有的Eclipse MicroProfile社区将有助于在此方面起带头作用。Jakarta将拥有微服务第一的前景和更简单的消费模式,企业可以使用最好的平台,而无需使用全部平台。
2.云计算崛起,Java EE 重点转向cloud-native Java “云原生Java”支持,与包括开源Docker容器和Kubernetes容器编排在内的技术更好地集成。某些集成必须在JVM级别进行。 Eclipse Jakarta社区有望与OpenJDK和Eclipse OpenJ9 VM团队合作。
3.提供生产环境质量的参考实施规范。
4.建立一个充满活力的Jakarta EE开发者社区
5.建立Eclipse作为开源“重心”,以吸引其他技术,如云友好的Java,微服务,Docker和Kubernetes集成。
6.Eclipse对云支持和微服务的重视与Oracle之前为企业Java概述的计划相呼应。作为Eclipse收购项目的一部分,该组织正在努力使社区参与更容易。
7.虽然之前的Oracle社区流程已经参与了Java社区,但参与开源项目(如GlassFish和Jersey Web服务API)需要签署Oracle贡献者协议 - 这是一些Java开发人员的障碍,

  1. Eclipse基金会组织表示,Java EE规范和开发的新流程将“开放”,与供应商无关,并为所有参与者提供公平的竞争环境。
    Jakarta EE工作组指导原则:
  2. 提供更频繁的发布
  3. 降低参与障碍
  4. 发展社区
  5. 代表社区管理JakartaEE品牌
  6. 这种方法的关键是基于社区的规范过程,鼓励每个人参与一个更准确地反映更广泛社区需求的开放过程。
    我们希望Jakarta EE平台能够快速发展,将Eclipse MicroProfile等开源社区的Java创新技术融入该平台的新版本,以帮助开发人员创建可移植的云原生应用程序。

Jakarta EE代表了驱动云原生,关键任务应用程序的最佳方式,并以现实世界部署和开发人员数十年的经验为基础。
阿里巴巴Java群超过3800人
进群方式:钉钉扫码入群
image
阿里巴巴MongoDB群
image

参考网站:
1、https://jakarta.ee/
2、https://www.infoworld.com/article/3269210/java-roadmap-eclipses-jakarta-ee-enterprise-java-takes-shape.html?upd=1552710900504

目录
相关文章
|
9天前
|
Prometheus 监控 Kubernetes
Prometheus 在微服务架构中的应用
【8月更文第29天】随着微服务架构的普及,监控和跟踪各个服务的状态变得尤为重要。Prometheus 是一个开源的监控系统和时间序列数据库,非常适合用于微服务架构中的监控。本文将详细介绍 Prometheus 如何支持微服务架构下的监控需求,包括服务发现、服务间的监控指标收集以及如何配置 Prometheus 来适应这些需求。
32 0
|
9天前
|
监控 JavaScript 测试技术
从单体应用迁移到微服务的最佳实践
【8月更文第29天】随着软件架构的发展,越来越多的企业开始考虑从传统的单体应用迁移到微服务架构。虽然迁移可以带来诸如更好的可扩展性、更高的灵活性等优势,但这一过程也可能充满挑战。本文将详细介绍如何顺利地进行这一转变,并提供一些实用的步骤和示例代码。
24 0
|
3天前
|
存储 Java 程序员
优化Java多线程应用:是创建Thread对象直接调用start()方法?还是用个变量调用?
这篇文章探讨了Java中两种创建和启动线程的方法,并分析了它们的区别。作者建议直接调用 `Thread` 对象的 `start()` 方法,而非保持强引用,以避免内存泄漏、简化线程生命周期管理,并减少不必要的线程控制。文章详细解释了这种方法在使用 `ThreadLocal` 时的优势,并提供了代码示例。作者洛小豆,文章来源于稀土掘金。
|
5天前
|
数据采集 存储 前端开发
Java爬虫开发:Jsoup库在图片URL提取中的实战应用
Java爬虫开发:Jsoup库在图片URL提取中的实战应用
|
12天前
|
Java
Java应用结构规范问题之在UnitConvertUtils工具类将千米转换为米的问题如何解决
Java应用结构规范问题之在UnitConvertUtils工具类将千米转换为米的问题如何解决
|
8天前
|
Java
java代码和详细的代码应用
代码块分为局部、构造、静态和同步代码块。局部代码块控制变量生命周期,例如 `int a` 只在特定代码块内有效。构造代码块用于创建对象时执行附加功能,避免构造方法中代码重复。静态代码块随类加载执行一次,常用于初始化操作。同步代码块确保多线程环境下方法执行的原子性,通过 `synchronized` 关键字实现。
19 3
|
8天前
|
算法 Java 数据库
Java 性能优化秘籍:在数字化浪潮中,让你的应用如火箭般飞驰!
【8月更文挑战第30天】Java 作为一种广泛使用的编程语言,其性能优化是开发者关注的重点。优化需基于对 Java 内存模型、垃圾回收及线程并发模型的理解。合理的垃圾回收算法与线程安全措施、锁机制的应用至关重要。实践中,避免不必要的对象创建可减轻内存压力;优化数据库操作,如合理使用索引和查询语句,同样重要。JVM 参数调优,如调整堆大小和垃圾回收器选择,也能显著提升性能。综合运用这些策略并通过持续测试与调整,可以使 Java 应用在高并发和大数据量场景下保持高效运行,提供流畅的用户体验。
27 3
|
8天前
|
Java UED 开发者
揭开Java性能提升之谜:异步编程如何让你的应用响应速度飞升?
【8月更文挑战第30天】随着互联网技术的发展,系统性能和用户体验成为关注焦点,异步编程因其能提高应用响应速度和吞吐量而在Java领域广泛应用。本文将详细阐述Java异步编程的概念与优势,并通过实战示例展示其在实际项目中的应用,如使用`Future`、`Callable`及`CompletableFuture`等接口和类实现异步操作,帮助开发者更好地理解和运用这一技术,以提升程序性能和用户体验。
10 0
|
10天前
|
Java
Java数组的应用场景
Java数组的应用场景
21 1
下一篇
DDNS