最新发布《数智时代的AI人才粮仓模型解读白皮书(2024版)》,立即领取! 了解详情
写点什么

Oracle 把 Java EE 的未来押在 Rest API 上了?

  • 2017-02-15
  • 本文字数:1677 字

    阅读完需:约 6 分钟

Oracle 正在向 REST 和 JSON 倾斜以使 Java EE 适应微服务和云的现代趋势。

作为一种提供 Web 服务通信的机制,似乎 REST 从很久以前就抢过了 SOAP 的风头。SOAP 因其复杂性已经饱受非议,而REST 结合了JSON 和 HTTP,针对Web 服务的交付提供了比其更为简单的手段。

简短截说,快进到现在,Oracle 在它的Java EE 升级计划中正在将REST 和 JSON 作为关键一环。在社区抗议Oracle 忽视的企业平台之后,该公司去年开始针对微服务和云平台更新Java EE 。在这些计划中,初步成果为定于今年八月推出的Java EE 8

“大家现在构建微服务的时候,往往倾向于做成基于REST 的,以便向JAX-RS(Java API for RESTful Web Services,针对RESTful Web 服务的Java API)靠拢,这个关键的规范正在升级中,”Oracle 的产品管理副总裁Mike Lehman 说。

JAX-RS 要更新为规范 JAX-RS 2.1,它所关注的能力包括:Server-Sent Events (SSE)、JSON-B 与上下文的集成以及依赖注入(CDI)。Java EE 8 的一个亮点是 JAX-RS 2.1,从而可以更容易地进行 REST 通信,Lehman 说它是粗粒度服务之间通信的典型方法,几乎就是默认选择。

一名前 Oracle Java EE 传道者仍积极地认为 REST 是微服务之锚。

“REST 其实是大多数微服务的关键组成部分,”Reza Rahman(他是一个Java EE 兴趣小组 Java Guardians 的领导者,在CapTech 担任高级架构顾问)说,“因此,JAX-RS 2.1( Java EE 8 中的REST API )做了一系列改进。”

在近期的Java 开发人员调查中,大家交口称赞针对 Java EE 的REST 和微服务。Oracle 在去年年底调查了1700 位用户,发现REST 和HTTP2 是 Java EE 中最为需求的两项技术。Oracle 在十二月份中的报告称,大多数针对这两项技术的API 都已经完成了,其中包括JAX-RS 2.1。另外,为更新各种不同的Java 规范提案,Glassfish 应用服务器的工作也在进行中,它提供了EE 的参考实现。

在一次连带进行的调查中,Java EE Guardians 和DZone 发现44% 的受访者正在寻求标准化的特性,比如能对微服务架构有所帮助的uber-JARs(特色是Java 编程和依赖)、发现、度量、断路器和舱壁。而27% 的受访者认为Java 已经完全适合用于构建实际的微服务了。只有4% 的受访者觉得微服务“不过是个噱头”。

Java 用户还把 JSON-B 放到了一个非常高的优先级上,JSON-B 是用于绑定 JSON 的 Java API。这个 JSON 数据交换格式提供了在线上格式化数据的机制,Lehman 说。为此, Java EE 8 的特色将是 JSON-B 1.0(用于绑定 JSON 对象到 Java 语言),以及提供解析 API 的 JSON-P (JSON with Padding) 1.1。

“程序员编写一个微服务去调用另一个微服务,然后以 REST 访问载荷数据进行处理,这些特性会成为适用于这些程序员的方式,”Lehman 说。

虽然 HTTP2 不是专门面向微服务的,但 Java EE 8 也针对这个规范进行了改善,它提供标准的 HTTP2 API。

对于云来说,Java EE 和 Java 自身仅仅是云平台上的运行环境,Lehman 说。“他们需要与公共云平台进行交互的能力”,比如数据库访问,他补充道。

Java 提供了与这些进行交互的编程 API,比如 REST 和 JSON。

“我们在 Java EE 8 中以及任何微服务平台中所想做的,是确保它们可以轻松与云服务进行交互,存储、持久层管理和监控,如此等等,”Lehman 说。

Oracle 还有一个 Java EE 9 的目标,定于 2018 年,它的定位是增加可扩展性、独立的服务和键值对存储支持的能力。不过,Rahman 担心 Java EE 9 是否得到了正确的关注。

“就我个人而言,对 Java EE 9 的关注使我担心我们是不是过早地标准化了还不应被标准化的特性,”Rahman 说。他援引了一些特性进行例证,比如动态配置 Java EE 应用的新版 API、针对 OAuth/OpenID 连接的支持、服务健康度检查,以及基于 Java SE 9 的模块化。

然而 Lehman 并不赞同 Rahman 对 Java EE 9 的说法,所以他重申 Oracle 暂时专注于 Java EE 8。“我们正在倾全力推出 EE 8,现在这是我们主要的关注点,”他说。

Java EE 的当前版本 Java EE 7 发行于 2013 年 6 月,它增加了对 HTML5 的支持。Java EE7 支持 JAX-RS 2.0,适用于 RESTful 应用的。

本文首发于 InfoWorld

2017-02-15 18:435166

评论

发布
暂无评论
发现更多内容

【人人都懂密码学】一篇最易懂的Java密码学入门教程

华为云开发者联盟

加密 密码

大型互联网应用系统的技术方案和手段

饺子

Java 中的反射是什么

Rayjun

Java 反射

阿里云服务器搭建

时间是一个人最好的证明

阿里云 服务器 域名

你掉进过“伪敏捷”的陷阱吗?

华为云开发者联盟

项目管理 软件 敏捷

有符号类型引发的奇怪现象

jiangling500

拯救深度学习:标注数据不足下的深度学习方法

华为云开发者联盟

学习 AI 训练

《Java核心技术总结》+《面试题总结》PDF整理,阿里P8大牛熬了半个月肝出来的!

Java架构之路

Java 阿里巴巴 程序员 面试 编程语言

架构师训练营第 1 期第四周总结

Leo乐

极客大学架构师训练营

数据库技术丨GaussDB(DWS)数据同步状态查看方法

华为云开发者联盟

数据库 高可用

架构师训练营第一期-第四周学习总结

卖猪肉的大叔

极客大学架构师训练营

京东区块链之供应链应用篇:溯源应用结合区块链能碰撞出什么火花?

京东科技开发者

区块链 供应链

Flink处理函数-6-4

小知识点

scala 大数据 flink

通证、通证经济与区块链

CECBC

区块链 通证经济

《Linux学习笔记》从常用命令、常用操作到网络管理、性能优化

Java架构之路

Java Linux 程序员 面试 编程语言

第四周学习代码系统架构总结

三板斧

架构师训练营第四周作业

Shunyi

极客大学架构师训练营

2020亚马逊全球Prime会员日为会员节省金额超过14亿美金

爱极客侠

浅析 Golang 垃圾回收机制

郭旭东

Go 语言

Vidyo整个产品架构是怎样的?

dwqcmo

音视频 集成架构 解决方案 智能硬件

本周学习总结

饺子

架构师训练营第一期-第四周课后作业

卖猪肉的大叔

极客大学架构师训练营

如何设计一个牛逼的API接口

Java旅途

Spring Boot API

MySQL-技术专题-SQL优化系列

洛神灬殇

上周,我密集面试了若干位Java后端的候选人,工作经验在3到5年间

Java架构师迁哥

架构师训练营 1 期 - 第四周 - 系统架构

三板斧

极客大学架构师训练营

5张表的sql整懵阿里p7:你们能看明白自己写的啥吗?

小Q

MySQL 数据库 学习 调优 mycat

阿里内部绝密《百亿级并发系统设计》实战教程,冒着被劝退的风险免费分享

Java架构之路

Java 阿里巴巴 程序员 面试 编程语言

看看专科程序员与本科程序员之间,到底有什么区别?

Java架构师迁哥

区块链将这样影响你的生产生活

CECBC

区块链 信息发展

研发和测试在多国陆续展开 全球央行数字货币研发驶入快车道

CECBC

数字货币 金融

Oracle把Java EE的未来押在Rest API上了?_Java_Paul Krill_InfoQ精选文章