Java Web 学习笔记之九:利用Jetty+restEasy搭建简单的rest web service

Java Web 学习笔记之九:利用Jetty+restEasy搭建简单的rest web service

简介

RESTEasy是JBoss的一个开源项目,提供各种框架帮助开发者构建RESTful Web Service和RESTful Java应用。它是JAX-RS规范的一个完整实现并通过JCP认证。

restEasy可以在任何JDK5以上的servlet容器中运行。

步骤

新建maven工程,pom配置文件添加依赖


使用到的依赖有:

  • jetty-server
  • jetty-webapp
  • resteasy-jaxrs

工程根目录添加目录:WebContent/WEB-INF,并在其中添加web.xml配置文件,内容如下


通过配置web.xml就能够将restEasy框架引入web应用中了。

新建rest接口类BaseService


接口中的注解是JAX-RS规范定义的,JAX-RS是JAVA EE6 引入的一个新技术。
JAX-RS即Java API for RESTful Web Services,是一个Java编程语言的应用程序接口,
支持按照表述性状态转移(REST)架构风格创建Web服务。

其中的注解如下:

注解 描述
@Path 标注资源类或者方法的相对路径
@GET,@PUT,@POST,@DELETE 标注方法是HTTP请求的类型。
@Produces 标注返回的MIME媒体类型
@Consumes 标注可接受请求的MIME媒体类型
@PathParam,@QueryParam,@HeaderParam, @CookieParam,@MatrixParam,@FormParam 分别标注方法的参数来自于HTTP请求的不同位置,例如@PathParam来自于URL的路径, @QueryParam来自于URL的查询参数,@HeaderParam来自于HTTP请求的头信息, @CookieParam来自于HTTP请求的Cookie。

在web.xml配置文件中将定义的接口引入

编写启动入口main方法

项目目录结构如下图

运行程序,并请求BaseService定义接口的URL,结果如下



说明程序配置成功。

在restEasy转发请求给自定义rest接口配置方式上面,上面讲述了一种方式,即通过web.xml配置文件设置context-param来实现,如下图:

还有另外一种通过程序实现的定义请求转发的方式.

API实现

编写RestApplication实现javax.ws.rs.core.Application


其中定义构造方法,将自定义的rest接口(跟方式一接口定义相同)实例化并添加到sinletons集合中,并重写getSingletons方法。

编写web.xml配置文件


注意要定义好restEasy的servlet的前缀。

其他步骤类似方式一。启动应用,测试接口的URL,结果如下图



说明restEasy配置成功!