使用 JERSEY 和 Spring Boot 建立 Rest 服務

Jersey 是可用於建立 Rest 服務的眾多框架之一,此示例將向你展示如何使用 Jersey 和 Spring Boot 建立 Rest 服務

1.專案設定

你可以使用 STS 或使用 Spring Initializr 頁面建立新專案。在建立專案時,請包含以下依賴項:

  1. 澤西島(JAX-RS)
  2. 捲筒紙

2.建立一個控制器

讓我們為 Jersey Web Service 建立一個控制器

@Path("/Welcome")
@Component
public class MyController {
    @GET
    public String welcomeUser(@QueryParam("user") String user){
        return "Welcome "+user;
    }    
}

@Path("/Welcome") annotation 向框架指示此控制器應響應 URI 路徑/ Welcome

@QueryParam("user") annotation 向框架指示我們期望一個名為 user 的查詢引數

3.Wiring Jersey 配置

現在讓我們使用 Spring Boot 配置 Jersey Framework:建立一個類,而不是一個擴充套件 org.glassfish.jersey.server.ResourceConfig 的 spring 元件:

@Component
@ApplicationPath("/MyRestService")
public class JerseyConfig extends ResourceConfig {
    /**
     * Register all the Controller classes in this method 
     * to be available for jersey framework
     */
    public JerseyConfig() {
        register(MyController.class);
    }

}

@ApplicationPath("/MyRestService") 向框架表明,只有指向路徑/MyRestService 的請求才能由 jersey 框架處理,其他請求仍應繼續由 spring 框架處理。

使用 @ApplicationPath 註釋配置類是個好主意,否則所有請求都將由 Jersey 處理,我們將無法繞過它並讓 spring 控制器在需要時處理它。

4.Done

啟動應用程式並觸發一個示例 URL,例如(假設你已將 spring boot 配置為在埠 8080 上執行):

http://localhost:8080/MyRestService/Welcome?user=User

你應該在瀏覽器中看到如下訊息:

歡迎使用者

你已經完成了使用 Spring Boot 的 Jersey Web 服務