jersey 基於tomcat web service 開發 restful service

1. 安裝好jdk

2. 根據前面的文章介紹,創建好tomcat運行時環境

3. 這裏對tomcat的配置重點提出來,以避免本人在實驗的時候遇到的衆多詭異問題

tomcat解壓後有RUNNING.txt。

根據裏面的guide,大家需要配置好以下內容

CATALINA_HOME的環境變量爲E:\apache-tomcat-8.0.30

CATALINA_BASE不需要設置

JAVA_HOME設置爲E:\java

JRE_HOME不需要設置

驗證方法:

windows: %CATALINA_HOME%\bin\startup.bat

Linux:  $CATALINA_HOME/bin/startup.sh

http://localhost:8080/ 能看到正常tomcat網頁則表示通過

 

好了,前面都是一些小插曲,下面介紹如何創建jersey resful service

1.  創建動態web項目,注意一路點next,最後勾選"generate .web.xml"

2. 爲防止萬一,首先將jersey中所有的jar包都拷貝到web-inf下的lib中,右擊web項目---refresh

3. 右擊web項目,build path----configure build path----libraries---add jars---將web項目中web-inf下的lib中所有jar包導入進來

4. 創建class 例如 RestApplication


package fei;

import org.glassfish.jersey.filter.LoggingFilter;
import org.glassfish.jersey.server.ResourceConfig;

public class RestApplication extends ResourceConfig{
    public RestApplication() {  
        packages("fei");  指定包名,將會加載此包中的所有資源類
        register(LoggingFilter.class);  
    }  
}
5. 創建class 例如 HelloCloud

package fei;

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;

@Path("/hello")  
public class HelloCloud {   資源類,注意path的位置
    @GET  
    @Produces(MediaType.TEXT_PLAIN)  
    public String getWebServiceInfo() {  
        return "Hello,RESTful web service!";  
    }  
}

6. 修改web.xml如下

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
  <display-name>fei</display-name>
      <servlet>  
        <servlet-name>hello cloud</servlet-name>  名字任意取
        <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>  固定
        <init-param>  
            <param-name>javax.ws.rs.Application</param-name>  固定
            <param-value>fei.RestApplication</param-value>  包名.類名
        </init-param>  
        <load-on-startup>1</load-on-startup>  
    </servlet>  
    <servlet-mapping>  
        <servlet-name>hello cloud</servlet-name>  同上名字
        <url-pattern>/*</url-pattern>  客戶端訪問的路徑前綴
    </servlet-mapping> 
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
</web-app>
7. 右鍵項目,選擇run as ---run on server ---選擇tomcat

8. 瀏覽器中訪問http://localhost:8080/fei/hello

前面是包名,後面是資源類中path的內容

即可看到內容

Hello,RESTful web service!
至此,地一個簡單的restful app開發完成

上面有很多注意事項,務必嚴格按照上面的步驟執行,否則可能出現問題需要調試。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章