restlet V1.x和2.x 的比较

时间:2022-12-02 17:09:13

restlet 从V1.1版本后就直接升级到了V2.0,从包结构到API都发生了很大的变化。


下面从几个方面阐述这些变化:


一、发布的jar包命名变化

在restlet V1.0和V1.1中,发布包都是以 restlet-1.x.x 格式发布的。

从restlet V2.0开始,发布包分成了   restlet-[platform]-2.x.x ,其中platform 包括:

android —— Android
gae  ——  Google App Engine
gwt —— Google Web Toolkit
jee jse —— Java SE/EE

restlet从V1.1 到 V2.0 有个过度的过程。这个过程中产生了部分的 restlet-1.2 和 restlet-2.0。


二、包的结构和API的变化


1、包结构的重新组织


V2.0重新组织了主要类的包package,重构了绝大多数的API,增加了针对不同平台的版本。

org.restlet 是基本部分,将 Restlet API 和它的实现(Restlet Engine)融合到了一起。

org.restlet.ext是其他除了基本部分之外的扩展,扩展部分在org.restlet.ext后面描述,比如:spring的扩展部分描述为 org.restlet.ext.spring。

在以前版本中出现的 com.noelios.* 的包完全移到 org.restlet.ext 对用的扩展中。


2、基本包的变化

org.restlet是基本部分,org.restlet是Root Package,称之为基本包。

org.restlet.Uniform 从之前的抽象类(abstract class)变为接口(interface),方法也有一个 handle(Request, Response) 方法,原有的逻辑被移到org.restlet.Client类中。


Application类中增加了inboundRoot 和 outboundRoot  ,取消了原来的 root 属性。如果修改原来的资源绑定,用inboundRoot替代root.


3、基本部分类图

restlet V1.x和2.x 的比较