# 用Jersey構建RESTful服務1--HelloWorld
## 一、環境
1. Eclipse Juno R2
2. Tomcat 7
3. Jersey 2.x(最新2.11版本測試通過) 下載地址( [https://jersey.java.net/download.html](https://jersey.java.net/download.html))
## 二、流程
1. Eclipse 中創建一個 Dynamic Web Project ,本例為“RestDemo”
2. 按個各人習慣建好包,本例為“com.waylau.rest.resources”

3. 解壓jaxrs-ri-2.7,將api、ext、lib文件夾下的jar包都放到項目的lib下;

項目引入jar包

4. 在resources包下建一個class“HelloResource”
```
package com.waylau.rest.resources;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.PathParam;
import javax.ws.rs.core.MediaType;
@Path("/hello")
public class HelloResource {
@GET @Produces(MediaType.TEXT_PLAIN)
public String sayHello() {
return "Hello World!" ;
}
@GET @Path("/{param}")
@Produces("text/plain;charset=UTF-8")
public String sayHelloToUTF8(@PathParam("param") String username) {
return "Hello " + username;
}
}
```
5. 修改web.xml,添加基于Servlet-的部署
```
<servlet>
<servlet-name>Way REST Service</servlet-name> <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>jersey.config.server.provider.packages</param-name>
<param-value>com.waylau.rest.resources</param-value> </init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Way REST Service</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
```
6. 項目部署到tomcat,運行
7. 瀏覽器輸入要訪問的uri地址 [http://localhost:8089/RestDemo/rest/hello](http://localhost:8089/RestDemo/rest/hello),輸出Hello World!

[http://localhost:8089/RestDemo/rest/hello/Way%E4%BD%A0%E5%A5%BD%E5%90%97](http://localhost:8089/RestDemo/rest/hello/Way%E4%BD%A0%E5%A5%BD%E5%90%97),輸出Hello Way你好嗎

參考:[https://jersey.java.net/documentation/latest/user-guide.html](https://jersey.java.net/documentation/latest/user-guide.html)
**本章源碼**:[https://github.com/waylau/RestDemo/tree/master/jersey-demo1-helloworld](https://github.com/waylau/RestDemo/tree/master/jersey-demo1-helloworld)
- 用Jersey構建RESTful服務
- 用Jersey構建RESTful服務1--HelloWorld
- 用Jersey構建RESTful服務2--JAVA對象轉成XML輸出
- 用Jersey構建RESTful服務3--JAVA對象轉成JSON輸出
- 用Jersey構建RESTful服務4--通過jersey-client客戶端調用Jersey的Web服務模擬CURD
- 用Jersey構建RESTful服務5--Jersey+MySQL5.6+Hibernate4.3
- 用Jersey構建RESTful服務6--Jersey+SQLServer+Hibernate4.3
- 用Jersey構建RESTful服務7--Jersey+SQLServer+Hibernate4.3+Spring3.2
- 用Jersey構建RESTful服務8--Jersey+SQLServer+Hibernate4.3+Spring3.2+jquery
- 用Jersey構建RESTful服務9--Jersey+SQLServer+Hibernate4.3+Spring3.2+AngularJS
- 用 Jersey 2 和 Spring 4 構建 RESTful web service