Java EE 8的工作仍处于初期阶段,预计在来年会紧跟潮流,我们将看到专家组的形成完成,围绕用例/功能的更多讨论,许多JIRA,以及各种规范的草案版本(本会很有趣!)。

第1部分中 ,我们研究了Java EE 8中包含的新规范 。在本文中,让我们看一下为进一步增强而排队的现有规范( 非常重要 !)

更新规格清单

  • CDI 2.0(JSR 365)
  • JAX-RS 2.1(JSR 370)
  • Servlet 4.0(JSR 369)
  • JSON-P 1.1(JSR 374)
  • JMS 2.1(JSR 368)
  • Java EE管理2.0(JSR 373)
  • JSF 2.3(JSR 372)

让我们一一看一下……。

CDI 2.0(JSR 365)

自从其在Java EE 6中诞生以来,CDI已成为Java EE平台中不可或缺的一部分。 CDI的巨大成功导致社区需求,以进一步加强其与平台中不同规范的集成。 查看Java EE 8社区调查结果的第5-7页。

目标

  • Java SE 8对齐(当然!)–利用Java 8好东西,例如Lambda,流,可重复注释,默认方法等
  • 支持Java SE –标准化Java SE的依赖注入API。 各个CDI实现(Weld等)确实支持Java SE,但是需要使用特定于供应商的方式来使用它们。 希望可以解决此问题,我们将拥有一个用于在Java SE和EE上使用CDI的标准API!
  • CDI模块化 –将CDI拆分为易于管理的模块,从维护以及采用/实施的角度使事情变得更容易
  • 增强的事件 –一项主要增强功能是引入了异步事件 ,该事件到目前为止还没有出现(CDI 1.2)。
  • 其他功能 – AOP(拦截器和装饰器)和SPI相关的增强功能

现在还很早,到目前为止还没有什么可以确定的。 事情正在发展,并将继续如此。 可以在官方CDI规范页面上访问所有最新更新。

这是我几天前发布的博客 ,其中包含有关CDI 2.0的更多详细信息。

快速链接

  • JCP页面
  • 参考实施– JBoss Weld
  • JavaOne 2014上的最新演讲 – CDI 1.2为中心

JAX-RS 2.1(JSR 370)

有了即将发布的目标和功能,令我惊讶的是该修订版被称为2.1 –可能是3.0, 但这只是我的一般意见

EE 8计划

  • CDI紧密集成
  • 服务器发送事件(SSE)的支持 –社区要求的标准包括服务器发送事件的标准API,正如Java EE 8社区调查结果的第2页所示。 如果您还没有听说过SSE或不了解SSE,则可以将其视为一条中间路径,其中包括b / w HTTP(基于请求响应)和WebSockets(全双工和双向)。

注意 :* Jersey提供对SSE的支持,但它不是JAX-RS标准的一部分,因此不可移植。 您可以在这里内容 *

  • JSON-B集成– JSON-B是我在上一篇文章中提到的另一个Java EE 8候选人。 当前,JAX-RS为JAXB提供了无缝的现成支持。 JSON-B也计划这样做。 您所需要做的就是用JSON-B注释定义模型类,并将其余的留给JAX-RS运行时!
  • 安全的明确支持–确保RESTful服务的安全一直是一个话题。 尽管仍可以应用标准的Java EE Web(servlet)和业务(EJB)层安全性,但是JAX-RS不支持用于声明性或程序性安全性的标准方法。 但是这里的目标将是标准化JAX-RS特定的安全功能或利用Java EE Security 1.0(JSR 375) (另一个Java EE 8候选者)
  • 为JAX-RS提供程序启用NIO (非阻塞I / O)。 这是对自JAX-RS 2.0以来已经存在的异步(服务器和客户端)功能的补充。
  • 管道中的其他功能包括支持通过JAX-RS进行反应式编程,改进JAX-RS 2.0中引入的Hypermedia API(HATEOAS)以及支持

快速链接

  • JCP官方页面
  • 参考实施– 泽西岛
  • 让我们来谈谈JAX-RS.next!
  • Java One 2014讨论了Jersey的最新功能 – Java One 2014的另一个好东西!

Servlet 4.0(JSR 369)

Servlet是Java EE中最古老,最重要的规范之一。 在它之上还建立了其他几个规范(JAX-RS,WebSockets等)。 Servlet 4.0将专用于HTTP / 2。 其主要目标是为Servlet API提供HTTP / 2功能。

目标

  • 请求/响应多路复用
  • 流优先级
  • 服务器推送
  • 从HTTP 1.1升级–使用API​​中的现有升级功能(从HTTP到Web套接字)来启用到HTTP / 2的升级

快速链接

  • JCP官方页面
  • 在Java One 2014上的演讲– Java实现HTTP 2.0:Servlet 4.0对您意味着什么
  • 另一个来自Java One 2014 的带有Servlet Async IO的狂野之路 -面向Servlet 3.1

JSON-P 1.1(JSR 374)

JSON-P 1.0在Java EE 7中引入,为开发人员提供了处理JSON的标准API,而无需打包第三方实现。 这帮助Java EE 7真正符合HTML5标准(其关键主题之一)。 JSON-P 1.1更像是具有修复和改进功能的维护版本。

Java EE 8有什么计划?

  • Java SE 8保持一致 –尽管目标显而易见,但仍然很有趣。 可以增强API以使用Java 8收集器,并提供JSON解析器事件的Stream表示。
  • 结合了对JSON规范本身更新的支持-JSON指针和JSON补丁
  • 支持修改(以前是不可变的)JSON对象(可能通过类似Builder的实现)

快速链接

  • JCP官方页面

JMS 2.1(JSR 368)

JMS 2.0(JSR 343)带来了巨大的改进,特别是在简化API itslef方面。 结果是易用性和开发人员生产率–这是Java EE 7的中心主题之一。JMS2.1计划引入一些重要的更改/添加以及一些常规的改进–让我们来看看

  • Java SE 8保持一致 –我认为这并不令人惊讶(可重复的批注,lambda等)
  • 异步消息传递方法的变化 (寻找替代想法)–计划是将MDB的想法扩展到一般的任何CDI bean,并消除必须实现MessageListener接口的约束。 任何CDI bean都可以采取异步方式接收消息。
  • 杂项改进,例如在Java EE事务中使用时的JMS提供程序行为,JMS提供程序与Java EE应用服务器的可移植性,在MDB抛出异常的情况下重新传递消息

考虑到CDI 2.0也将支持异步事件,有趣的是,看看这两个规范如何处理通常处理异步事件/消息处理的功能。 另外,还需要查看该特定功能是否最终会使MDB过时。

快速链接

  • JCP官方页面

Java EE管理2.0(JSR 373)

简而言之,该JSR旨在成为J2EE管理规范(JSR 77)的现代对应物。 REST是现代化的代名词,Java EE Management JSR计划采用REST作为事实上的接口,用于与托管对象进行通信并提供诸如

  • 将托管对象上的CRUD操作公开为RESTful接口
  • 利用SSE分发事件以响应被管理对象状态的变化
  • 使用REST接口(通过相同的接口进行部署和管理)来启用Java EE应用程序的部署-与还处理Java EE应用程序部署的JSR 88相比有很大的不同

截至目前,从工作的角度来看,事情有点安静。 但是我非常确定,我们将在新的一年中采取很多行动!

快速链接

  • JCP官方页面

JSF 2.3(JSR 372)

看起来JSF 2.3将由社区的投入和反馈来驱动。 查看Java EE 8社区调查结果的第3、4、5页,以了解有关MVC以及JSF的模板引擎的反馈。

目标

  • 利用Java SE 8以及Java EE 8平台本身的其他功能
  • 增强了对JSF Ajax API的支持 ,以允许对CDI托管(控制器)bean的直接Ajax调用(这听起来很有希望!),这将使通过客户端和Java EE后端交换JSON消息变得简单。
  • 结合了JSF用户社区急需的功能-EL性能改进,多字段验证等
  • 支持MVC 1.0 – JSF为MVC的“ V”(视图)部分提供了很多功能(Facelets,faceflow,JSF CDI范围等)。 看看对MVC 1.0的JSF进行哪些更改/添加会很有趣

快速链接

  • JCP官方页面

就Java EE 8优点而言,这一切吗? 当然不是。 其他规范也将进行修订和改进–它们很快就会成为众人关注的焦点。 这是其他规格的快速概述以及预期的结果

  • EJB 3.2 (维护版本)
  • JPA 2.1 (维护版本–支持Java 8 DateTime API和重复注释)
  • WebSocket 1.0 (维护版本)
  • JTA和Java Mail规范也可能需要维护版本

有关Java EE 8专家组电子邮件讨论的更多信息

Java EE 8刚刚开始热身。 我很确定这次旅程会令人兴奋! 敬请关注…。

干杯!

翻译自: https://www.javacodegeeks.com/2014/12/whats-up-with-java-ee-8-part-2.html

Java EE 8发生了什么? (第2部分)相关推荐

  1. Java EE 8发生了什么?

    Java EE 8的工作进展顺利. 是时候赶上了! 无需费力就可以潜入- 不要忘记Java EE 7-.. 围绕三个重要主题 HTML 5对齐–用于WebSocket的Java API(JSR 356 ...

  2. Oracle与JCP执行委员会分享了他们的Java EE策略

    Anil Gaur是Oracle集团负责Java EE和WebLogic Server的副总裁.他受邀在上一次的JCP执行委员会会议上发表了演讲,透露了有关Java EE未来发展的一些信息.他所传达的 ...

  3. 微服务:Java EE的拯救者还是掘墓人?

    有人认为,微服务的大行其道是在给Java EE下达死刑判决书.也有人认为,Java EE已死的论调可笑至极.读者朋友,你们怎么看? 引言 有人说,Java确实过于臃肿,经常"小题大做&quo ...

  4. jakarta_适用于Java EE / Jakarta EE开发人员的Micronaut

    jakarta 城镇中有一个名为Micronaut的新微服务框架. 在这篇文章中,我将从Java EE / Jakarta EE的角度讨论如何冒险使用Micronaut框架. 我是Java EE开发人 ...

  5. 小白科普:Java EE vs J2EE vs Jakarta EE

    作者 | Rodrigo Graciano 编译 | Panson https://www.baeldung.com/java-enterprise-evolution 1. 引言 听说过 Java ...

  6. java ee 中文乱码的问题

    java ee 中文乱码的问题发生中文乱码的三种情况(一) 表单formPost 方法直接在服务器中设置request.setCharacterEncoding("utf-8"); ...

  7. jakarta ee_适用于Java EE / Jakarta EE开发人员的Micronaut

    jakarta ee 城镇中有一个名为Micronaut的新微服务框架. 在本文中,我将从Java EE / Jakarta EE的角度讨论如何冒险使用Micronaut框架. 我是Java EE开发 ...

  8. react api_使用Java EE 8中的React式API加速服务

    react api 服务通常可以通过异步处理进行优化,即使不改变其对外界的行为. 某些服务效率不高的原因是,它们需要等待其他服务提供结果才能继续下去. 让我们看一下如何在不等待外部REST服务的情况下 ...

  9. java ee的小程序_用微服务和容器替换旧版Java EE应用程序服务器

    java ee的小程序 Lightbend最近对2000多个JVM开发人员进行了一项调查,结果刚刚发布. 开展该调查的目的是发现:发展趋势与IT基础架构趋势之间的相关性,处于数字化转型前沿的组织如何使 ...

最新文章

  1. ISP、IAP、ICP的区别!
  2. git log 获取构建时间_Docker 运行 Jenkins 自动化构建 .NET Core 项目
  3. Jenkins与Docker的自动化CI/CD实战
  4. oracle 查看日志组切换状态_【DB笔试面试800】在Oracle中,归档和非归档模式之间的不同点是什么?它们各自的优缺点是什么?...
  5. c++ 写x64汇编 5参数_第9篇-C/C++ x86_64的函数栈
  6. 惠普HP Photosmart 7960 打印机驱动
  7. SqlServer存储过程详解
  8. 如何申请自己的免费企业邮箱
  9. Linux内核数据结构之 radix tree
  10. 基于开源软件构建高性能集群NAS系统
  11. Channel 是什么?
  12. 35岁的程序员:第16章,双重担忧
  13. 缺失msvcr120.dll一般性问题如何解决
  14. java加载字体文件_Java的加载自定义字体文件(.TTF)
  15. 2020年全球及中国术后镇痛药行业市场现状分析,非阿片类药物需求不断增长「图」
  16. 痞子衡嵌入式:内存读写正确性压力测试程序(memtester)
  17. 无线串口服务器的辐射范围,揭真相!无线路由器的辐射到底可怕不?
  18. 美丽乡村可行性研究报告
  19. 学生时代应如何做好程序员
  20. 仓库管理系统商业项目功能介绍

热门文章

  1. 人脸登陆facelogin
  2. mybatis简单案例源码详细【注释全面】——Dao层接口(UserMapper.java)
  3. 表单中去掉重置和提交按钮和搜索框
  4. Rest风格---ElasticSearch
  5. arm芯片厂家排名_国产芯片目前至少有10种,其中有3种,达到了世界顶尖水平
  6. kafka控制器,复制与存储小结
  7. javah导出类的头文件抛出异常——java.lang.IllegalArgumentException: Not a valid class name(原因及解决方法)
  8. java序列化和反序列化_Java恶意序列化背后的历史和动机
  9. idea资源包下创建资源包_根据谁创建资源授权资源
  10. Infinispan版本已映射到最低Java版本