今天分享一下我的第一個最簡單的jersey example
參考資料: http://www.codedata.com.tw/java/java-restful-1-jersey-and-jax-rs
程式碼的部分是參考此篇文章,
但在步驟上有新增一些筆者沒有特別詳述的部分! 以及版本不同的細節
(我也是花了一點時間鬼打牆過來的QQ)
那麼~就開始我們第一隻Jersey Hello World! 吧
請先做好下列工具的安裝準備
我的環境:
(1) Eclipse: Eclipse Java EE IDE for Web Developers. Version: Mars Release (4.5.0)
(2) Jersey: 2.6
(3) Maven: 4.0.0
(4) Tomcat: apache-tomcat-7.0.75
1. 開啟一個新的project
1-1. 打開eclipse > File > Other...
1-2. 在filter的blank處 輸入 maven > 選擇 Maven Project
(Tips: 如果沒有出現這個選項, 請檢查你的eclipse版本是否沒有涵蓋Maven Project, 請參考我安裝的版本)
1-3. 選擇預設的workspace路徑, 你可以創建在任何位置, 在這邊我是放在我的Documents底下workspace
1-4. 開啟一個webapp
在Filter: 輸入webapp
選擇 Group id : org.apache.maven.archetypes, Artifact id: maven-archetype-webapp 的選項
1-5. 設定Archetype參數, 按下Finish! 完成
Group id: tw.com.codedata
Artifact id: JerseyExample
Version: 0.0.1-SNAPSHOT
Package: tw.com.codedata.jersey
2. 建立src/main/java 目錄
2-1 在左側Project Explorer 可以找到剛剛開啟的JerseyExample Project
右鍵在src/main上, 選 New > Folder
3. 設定 dependency
打開pom.xml檔 加入 dependency, 我的使用的版本為2.6
<dependency>
<groupId>org.glassfish.jersey.containers</groupId>
<artifactId>jersey-container-servlet</artifactId>
<version>2.6</version>
</dependency>
4. 新增Application
4-1 在剛剛create好的 src/main/java, 點選右鍵 > New > Class
4-2 設定class參數, 按下Finish
Package: tw.com.codedata.jersey
Name: MyApplication
4-3 這時候左側就會自動長出下圖的目錄結構, 兩下點開MyApplication
4-4 貼上程式代碼
package tw.com.codedata.jersey; import javax.ws.rs.ApplicationPath; import org.glassfish.jersey.server.ResourceConfig; @ApplicationPath ( "rest" ) public class MyApplication extends ResourceConfig{ public MyApplication(){ packages( "tw.com.codedata.jersey" ); } } |
5. 新增API
我們現在要建立 RESTful API Service拉
這邊就請大家參照4-1~4-4的步驟 改一下參數設定,
5-1. 點選右鍵 > New > Class
5-2. 設定class參數, 按下Finish
Package: tw.com.codedata.jersey
Name: HelloRS
5-3. 兩下點開HelloRS
5-4. 貼上代碼
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
package tw.com.codedata.jersey; import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.PathParam; @Path ( "/hello" ) public class HelloRS { @GET public String sayHelloWorld() { return "Hello world" ; } @GET @Path ( "/{name}" ) public String sayHello( @PathParam ( "name" ) String name) { return "Hello, " + name; } } |
6. 跑起你的Server, 完成!
url 輸入 /rest/hello
url 輸入 /rest/hello/<name>
簡簡單單~就完成你的第一支Jersey RESTful API!
改天有空再來補細節說明囉QQ
留言列表