博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java API for RESTful Web Services 2.1发布
阅读量:7058 次
发布时间:2019-06-28

本文共 1335 字,大约阅读时间需要 4 分钟。

JAX-RS 2.1于本周发布。据Oracle技术小组首席成员及规范牵头人介绍,JAX-RS 2.1中包括对服务器发送事件(SSE,Server-Sent Event)和JSON-B的支持,并改进了对JSON-P的支持。该API给出了对客户端API的响应式扩展,内建了对Java 8 CompletionStage的支持,以及对等其它响应式API的扩展点。

\\

参考,这次发布版本的目标包括用于POJO的注解(Annotation)以及可灵活使用的API,这些API提供了对通用HTTP使用模式和、等应用的高层支持,支持多种HTTP实体内容类型、Servlet容器和JAX-WS提供者,并将提供Web资源类中对Java EE特性和组件的支持。

\\

在InfoQ对Pericas-Geertsen的采访中,他详细介绍了SSE:

\\
\

SSE资源中注入了一种称为SseEventSink的特定类型,提供文本流和事件流。SSE客户使用SseEventSource从连接中读取事件。

\\

该机制使用了长连接和广播,提供的性能要比轮询和资源密集短连接更优。

\
\\

下面的代码段展示了SSE的用法:

\\

服务器端:

\\
\@GET\@Produces(MediaType.SERVER_SENT_EVENTS)\public void getMessageQueue(@Context Sse sse, @Context SseEventSink eventSink) {\    // 一旦客户订购事件流,就激活资源方法。\    // 这意味着事件更像是从不同的场景中发出,例如线程、事件处理器等。\    // 资源方法通常实现为存储eventSink实例,应用逻辑将在事件应被发送到客户时检索事件。\    // 发送事件:\    eventSink.send(sse.newEvent(\"event1\"));\}\
\\

客户端:

\\
\WebTarget target = ClientBuilder.newClient().target(\"server-sent-events\");\SseEventSource eventSource = SseEventSource.target(target).build();\// EventSource#register(Consumer)\// 经注册的事件处理器将打印出所接收到的消息。\eventSource.register(System.out::println);\// 向事件流订阅。\eventSource.open();\
\\

Pericas-Geertsen补充了一下几点:

\\
  • \

    JAX-RS 2.1完全向后兼容前期版本。

    \ \\
  • \

    新特性很好地集成了现有的JAX-RS概念。例如,仅需在客户调用中注入一个方法调用,就可以将处理方式由同步转向响应式。

    \ \\
  • \

    SSE依赖基于流HTTP的连接,是现有API的自然扩展。

    \ \

鉴于该API广泛地使用了注解机制和Lambda表达式,因此它支持Java SE 8及以后版本所开发的应用。

\\

查看英文原文:

转载地址:http://wmgol.baihongyu.com/

你可能感兴趣的文章
零元学Expression Blend 4 - Chapter 23 Deep Zoom Composer与Deep Zoom功能
查看>>
C#~异步编程再续~async异步方法与同步方法的并行
查看>>
Windows下的字体美化
查看>>
13.9. Health Status
查看>>
Unable to execute dex: Multiple dex files define Lcom/kenai/jbosh/AbstractAttr
查看>>
微信小程序明星开发者博卡君专访
查看>>
什么是 Help Desk?
查看>>
【MySQL】Tokudb安装测试初探
查看>>
12C打补丁的简单尝试
查看>>
分割excel sheet
查看>>
CentOS 7 yum方式快速安装MongoDB
查看>>
C#身份证识别相关技术
查看>>
【单片机】基于有方GPRS的智能电梯控制系统
查看>>
基于spring-boot的rest微服务框架
查看>>
微信公众平台开发最佳实践(第2版)
查看>>
Maven 依赖 spring-web 对战 spring-webmvc
查看>>
用了一天的时间,linux下expect实现ssh自动登录服务器记,鄙视下网上各种抄来抄去残段子...
查看>>
青岛市李沧区搭建人才大数据平台
查看>>
Linux下自动化监控内存、存储空间!
查看>>
iOS 7 表视图顶部空白解决
查看>>