多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# 面向初学者的 RESTEasy 示例教程 > 原文: [https://howtodoinjava.com/resteasy/resteasy-tomcat-hello-world-application/](https://howtodoinjava.com/resteasy/resteasy-tomcat-hello-world-application/) [**RESTEasy**](http://resteasy.jboss.org/ "resteasy") 是 JBOSS 提供的 JAX-RS 规范的实现,用于构建 [**REST API**](//howtodoinjava.com/restful-web-service/ "RESTEasy tutorials") 和 RESTful Java 应用。 尽管 RESTEasy 不限于仅在 JBOSS 中使用,我们也可以与其他服务器协作。 在此 **RESTEasy 示例**中,学习使用 eclipse 和 tomcat 在 Java 中创建静态的 Web 服务 ## 1\. 开发环境 1. RESTEasy 2.3.1.GA 2. Tomcat 7 3. JDK 1.6 请按照以下步骤构建演示应用。 ## 2\. 创建 Maven Eclipse Web 项目 运行这些命令来创建一个 Maven 项目,并且可以转换为 Eclipse 项目。 ```java $ mvn archetype:generate -DgroupId=com.howtodoinjava -DartifactId=RESTfulDemoApplication -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false $ mvn eclipse:eclipse -Dwtpversion=2.0 ``` ## 3\. RESTEasy Maven 依赖项 ```java <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.howtodoinjava</groupId> <artifactId>RESTfulDemoApplication</artifactId> <packaging>war</packaging> <version>1.0-SNAPSHOT</version> <name>RESTfulDemoApplication Maven Webapp</name> <url>http://maven.apache.org</url> <repositories> <repository> <id>jboss</id> <url>http://repository.jboss.org/maven2</url> </repository> </repositories> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <!-- core library --> <dependency> <groupId>org.jboss.resteasy</groupId> <artifactId>resteasy-jaxrs</artifactId> <version>2.3.1.GA</version> </dependency> <dependency> <groupId>net.sf.scannotation</groupId> <artifactId>scannotation</artifactId> <version>1.0.2</version> </dependency> </dependencies> <build> <finalName>RESTfulDemoApplication</finalName> </build> </project> ``` ## 4\. 注册`HttpServletDispatcher` **RESTeasy** 实现为 Servlet,并部署在 WAR 文件中。 `HttpServletDispatcher`类负责初始化 RESTeasy 的一些基本组件。 `resteasy.scan`属性会自动扫描`WEB-INF/lib` jar 和`WEB-INF/classes`目录中的`@Provider`和 JAX-RS 资源类(`@Path`,`@GET`,`@POST`等)并进行注册。 ```java <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" > <web-app> <display-name>Archetype Created Web Application</display-name> <!-- Auto scan REST service --> <context-param> <param-name>resteasy.scan</param-name> <param-value>true</param-value> </context-param> <servlet> <servlet-name>resteasy-servlet</servlet-name> <servlet-class> org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher </servlet-class> </servlet> <servlet-mapping> <servlet-name>resteasy-servlet</servlet-name> <url-pattern>/*</url-pattern> </servlet-mapping> </web-app> ``` ## 5\. 创建 REST 控制器 ```java package com.howtodoinjava.restful; import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.core.Response; @Path("/user-management") public class UserManagementModule { @GET @Path("/users") public Response getAllUsers() { String result = "<h1>RESTful Demo Application</h1>In real world application, a collection of users will be returned !!"; return Response.status(200).entity(result).build(); } } ``` ## 6\. RESTEasy 示例应用演示 当我们在 tomcat 中部署以上构建的应用并单击 URL:“`http://localhost:8080/RESTfulDemoApplication/user-management/users`”时,以下是响应。 ![JAX-RS + Tomcat example](https://img.kancloud.cn/a6/60/a6607a767a3c652e7255450adcfc4c25_403x104.png) JAX-RS + Tomcat 示例 要下载以上示例的源代码,请单击下面的链接。 [下载源码](https://docs.google.com/file/d/0B7yo2HclmjI4c25YSk9Gc3F6c2c/edit?usp=sharing "下载源码 of RESTEasy + tomcat") 学习愉快!