国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - 創建Jersey REST 服務,基于Maven的實現

創建Jersey REST 服務,基于Maven的實現

2020-11-20 10:36Java教程網 Java教程

下面小編就為大家帶來一篇創建Jersey REST 服務,基于Maven的實現。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

基于JavaSE形式的REST服務

創建項目

我們首選使用 archetypeGroupId 為 org.glassfish.jersey.archetypes 的原型,archetypeArtifactId為 jersey-quickstart-grizzly2 的原型,創建REST服務項目,使用IDEA創建項目如下:

創建Jersey REST 服務,基于Maven的實現

點擊OK后,使用該原始模型創建項目。

運行服務

項目創建好后,原始模型已經默認創建了一個REST服務,我們可以直接啟動REST服務,進入項目的根目錄,執行如下命令構建和啟動服務:

mvnpackage

mvnexec:java

會啟動REST服務,可以隨時通過回車鍵停止服務,輸出如下:

六月 19, 2017 11:12:23 下午 org.glassfish.grizzly.http.server.NetworkListener start

信息: Started listener bound to [localhost:8080]

六月 19, 2017 11:12:23 下午 org.glassfish.grizzly.http.server.HttpServer start

信息: [HttpServer] Started.

Jersey app started with WADL available at http://localhost:8080/myapp/application.wadl

Hit enter to stop it…

還提供了 WADL,通過訪問 application.wadl 可以獲取當前REST服務公布的接口:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<resources base="http://localhost:8080/myapp/">
 
        <resource path="myresource">
 
            <method id="getIt" name="GET">
 
                <response>
 
                    <representation mediaType="text/plain"/>
 
                </response>
 
            </method>
 
        </resource>
 
    </resources>

 

訪問服務

可以直接訪問 http://localhost:8080/myapp/myresource 就可以訪問REST服務,直接訪問REST服務,會輸出 Got it! 。

項目說明

啟動服務的命令 mvn exec:java,該命令實際調用了 exec-maven-plugin 插件定義的一個值為 java 的 goal ,用以觸發mainClass中的main函數,插件配置如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<plugin>
 
     <groupId>org.codehaus.mojo</groupId>
 
     <artifactId>exec-maven-plugin</artifactId>
 
     <version>1.2.1</version>
 
     <executions>
 
            <execution>
 
                  <goals>
 
                      <goal>java</goal>
 
                 </goals>
 
            </execution>
 
      </executions>
 
      <configuration>
 
           <mainClass>org.drsoft.rest.Main</mainClass>
 
      </configuration>
 
 </plugin>

 

REST服務類為 MyResource,其 @Path 中定義了資源路徑,@GET中定義了GET方法getIt(),@Produces中定義了響應的類型為普通字符串,示例代碼如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
@Path("myresource")
 
public class MyResource {
 
  
 
    @GET
 
    @Produces(MediaType.TEXT_PLAIN)
 
    public String getIt() {
 
        return "Got it!";
 
    }
 
}

 

REST服務的單元測試類MyResourceTest,在單元測試類中,在執行單元測試前需要啟動服務,并使用Jersey Client中定義的方法來調用REST服務,示例代碼如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
public class MyResourceTest {
 
    private HttpServer server;
 
    private WebTarget target;
 
    @Before
 
    public void setUp() throws Exception {
 
        // start the server
 
        server = Main.startServer();
 
        // create the client
 
        Client c = ClientBuilder.newClient();
 
  
 
        // uncomment the following line if you want to enable
 
        // support for JSON in the client (you also have to uncomment
 
        // dependency on jersey-media-json module in pom.xml and Main.startServer())
 
        // --
 
        // c.configuration().enable(new org.glassfish.jersey.media.json.JsonJaxbFeature());
 
  
 
        target = c.target(Main.BASE_URI);
 
    }
 
  
 
    @After
 
    public void tearDown() throws Exception {
 
        server.stop();
 
    }
 
  
 
    @Test
 
    public void testGetIt() {
 
        String responseMsg = target.path("myresource").request().get(String.class);
 
        assertEquals("Got it!", responseMsg);
 
    }
 
}

 

基于Servlet容器服務

創建項目

我們首選使用 archetypeGroupId 為 org.glassfish.jersey.archetypes 的原型,archetypeArtifactId為 jersey-quickstart-webapp 的原型,創建REST服務項目,使用 IDEA 創建項目如下:

創建Jersey REST 服務,基于Maven的實現

 

運行服務

由于這個是Web項目,沒有main函數,因此必須部署到Servlet容器中,才能將其運行,我們需要配置Tomcat,IDEA的配置如下:

點擊 Run菜單的 Edit Configuration,在打開的窗體中增加 Tomcat 服務配置,指定Tomcat 的安裝目錄,并設置當前站點的部署的虛擬目錄名稱,如下:

創建Jersey REST 服務,基于Maven的實現

 

創建Jersey REST 服務,基于Maven的實現

點擊OK后,就配置好Servlet容器,可以運行服務了

訪問服務

服務啟動后,我們可以訪問 http://localhost:8080/RESTWebAPP/webapi/myresource 來調用REST服務,會輸出 Got it!

項目說明

Web根目錄的名稱為webapp,默認的Servlet容器版本為2.5,并且配置了WEB-INF/web.xml文件來配置REST服務,web.xml配置如下:

 

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?xml version="1.0" encoding="UTF-8"?>
 
<!-- This web.xml file is not required when using Servlet 3.0 container,
 
see implementation details http://jersey.java.net/nonav/documentation/latest/jax-rs.html -->
 
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
 
    <servlet>
 
        <servlet-name>Jersey Web Application</servlet-name>
 
        <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
 
        <init-param>
 
            <param-name>jersey.config.server.provider.packages</param-name>
 
            <param-value>org.drsoft.rest</param-value>
 
        </init-param>
 
        <load-on-startup>1</load-on-startup>
 
    </servlet>
 
    <servlet-mapping>
 
        <servlet-name>Jersey Web Application</servlet-name>
 
        <url-pattern>/webapi/*</url-pattern>
 
    </servlet-mapping>
 
</web-app>

以上這篇創建Jersey REST 服務,基于Maven的實現就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持服務器之家。

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 一级特色黄大片 | 免费黄色网止 | 国产精品一二三区视频 | 成人午夜精品一区二区三区 | 久操成人| 久久综合久久88 | 国产高清一区二区 | 中文字幕免费在线 | 国产一区二区欧美 | 99久久婷婷国产精品综合 | 精品亚洲永久免费精品 | 日韩高清中文字幕 | 国产成人无遮挡在线视频 | 欧美一级特黄aaaaaaa在线观看 | 国产精品免费视频一区 | 欧美综合一区 | 深夜网址| 欧美大片一区二区 | 日本一区二区视频免费观看 | 欧美成人h版在线观看 | 免费一级片视频 | 亚洲 欧美 另类 综合 偷拍 | 黄色短视频在线观看 | 国产欧美精品一区二区色综合 | 精品福利一区二区三区免费视频 | 久久久综合色 | 永久91嫩草亚洲精品人人 | 精品久 | 久久精品综合 | 一级特黄a免费观看视频 | 天天操天天干天天爽 | 色天堂影院 | 久久夜色精品国产 | 一区二区三区精品 | 在线观看免费黄色小视频 | 成人av免费 | 亚洲视频在线看 | 91天堂| 欧美日韩精品一区二区在线观看 | 久久久蜜臀 | 一区二区三区在线 |