轻松创建基于REST的WEB服务(上)

日期: 2011-06-02 作者:Jason Tees翻译:李松 来源:TechTarget中国 英文

许多Java专业人员都有兴趣学习一下REST式WEB服务的基础知识,但是他们常常发现那些操作指南太复杂了。在本篇速成教材中,我们将直接使用基础知识,演示一下如何创建一个基于REST的WEB服务。你会发现竟是如此容易,我们所需要的仅仅是一套JDK,一个象记事本那样简单的文本编辑器,以及安装一套Tomcat 7。   首先,是关于RESTful WEB服务的几点介绍。

这类服务在HTTP协议上运行,并按照HTTP原本设计的使用方式运转。HTTP协议提供了四种基本方法:GET,POST,PUT和DELETE。在我们的示例中,我们将只处理GET方法,其他方法留待以后再说。    访问一个基于R……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

许多Java专业人员都有兴趣学习一下REST式WEB服务的基础知识,但是他们常常发现那些操作指南太复杂了。在本篇速成教材中,我们将直接使用基础知识,演示一下如何创建一个基于REST的WEB服务。你会发现竟是如此容易,我们所需要的仅仅是一套JDK,一个象记事本那样简单的文本编辑器,以及安装一套Tomcat 7

  首先,是关于RESTful WEB服务的几点介绍。这类服务在HTTP协议上运行,并按照HTTP原本设计的使用方式运转。HTTP协议提供了四种基本方法:GET,POST,PUT和DELETE。在我们的示例中,我们将只处理GET方法,其他方法留待以后再说。
 
  访问一个基于REST的Web服务

  作为我们这个基于REST的WEB服务实施过程的第一阶段,我们将创建一个简单的URL,它只能处理GET请求。这个服务可以通过下面这个URL进行访问:http://localhost:8080/restful/resources/helloworld

  一开始首先搞懂URL可能比较费力,但是我们最好还是了解一下URL是如何组成的。因为在我们开始创建Web服务的时候,你会接触到URL的各个不同部分-也就是,context root部分“restful”,RESTful资源文件容器“resources”,以及服务本身的名字,所有这些都将出现在代码中或者在XML配置文件中。
 
  所需要的WEB应用文件夹结构

  顾名思义,一个基于Java实现的REST式WEB服务,需要部署在一个符合Java企业版规范的Servlet容器中,同时,这个服务本身也必须符合Servlet和ASP应用编程接口所要求的文件夹结构格式。基本上说,这意味着在应用根目录下,我们需要一个WEB-INF目录,并且该目录需要有一个部署描述符,一个lib目录用来存放各种在运行时需要的JAR文件,一个在WEB-INF目录下的classes目录用来存放所有编译后的Java代码:

以下是引用片段:
+(root folder)
++WEB-INF
++++classes
++++lib

  对于本例中的应用,根目录的名称为_restful,它位于C盘的根目录下:

位于C盘的根目录

  在建立了上述所需的文件夹结构之后,现在我们就要创建合适的资源到WEB-INF文件夹,classes文件夹和lib文件夹中。首先我们来创建lib目录的内容。

  获取Jersey:JSR-311的实现

  实现RESTful WEB服务并不是一个“自编自演”式的实施过程。JSR-311是实施RESTful WEB服务的API规范,我们可以利用利用JSR规范的一个实现。Jersey是JSR-311的一个开源实现,它可以从jersey.java.net下载得到。

  在jersey.java.net上有多个文件可供下载,您需要下载的是那个包含有“Jersey jars,核心依赖和JavaDoc”的zip格式的文件。我下载的该文件名字为jersey-archive-1.6.zip ,大小为5.7兆字节。当将它解压缩到硬盘驱动器上时,它里面包含了一个lib文件夹,这里面就包含了各种“可爱”的jar文件。

各种“可爱”的jar文件

  所下载的Jersey文件夹lib下面的各个jar文件都需要拷贝到我们正在开发的WEB应用的WEB-INFlib目录下,你要注意WEB应用的运行时和编译时依赖关系。

注意WEB应用的运行时和编译时依赖关系

  在《轻松创建基于REST的WEB服务(下)》中,我们将会为您继续介绍相关内容。

相关推荐