爪哇2博客
爪哇2博客

爪哇中的Restful Web 服务s示例

在本文中,我们将在eclipse中使用jersey使用Java开发Restful Web服务示例。

Web服务教程内容:

 

休息ful Web服务的Java API(JAX-RS)是开发人员REST服务的API。 JAX-RS是Java EE6的一部分,使开发人员可以轻松开发REST Web应用程序。

泽西岛是此规范的参考实现。泽西岛基本上包含一个REST服务器和一个REST客户端。核心客户端可以使用jersey LIB与服务器通信。

在服务器端,Jersey使用servlet来扫描预定义的类以标识RESTful资源。通过适用于您的Web应用程序的web.xml配置文件。

该servlet的基本URL为:

1
2
3
 
<b>http://您的域:端口/显示名称/网址模式/ 路径_from_rest_class</b>
 

该Servlet分析传入的HTTP请求,并根据请求选择正确的类和方法。该选择基于类和方法中提供的注释。

让’请参见Java中的estest Web服务示例。

先决条件:

1)打开月食。
2)新建 动态网页项目 命名“RESTfulWebService示例”

3)现在转到下载jersey的位置,然后转到jersey-archive-1.17->lib
folder.you可以拥有所有jar,但是现在您可以复制以下jar

  • 如m-3.1
  • 球衣-client-1.17
  • 球衣核心1.17
  • 泽西服务器1.17
  • 球衣-servlet-1.17
  • jsr311-api-1.1.1

Paste all above copied jars to 网页内容->WEB-INF->lib

将所有这些jar添加到Eclipse构建路径。
右键单击项目(RESTfulWebService示例)->properties


单击Java Build 路径,然后单击添加jar,如上图所示。

去项目->WebContent->WEB-INF->lib并选择所有罐子,然后单击“确定”。

单击确定。Jerseyjars添加到类路径。
4)创建名为“org.arpit.javapostsforlearning.webservice”


5)创建  脚ToInchAndInchToFeetConversionService.java

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
 
组织.Arpit.爪哇postsforlearning.网页服务;
/ **
* @作者Arpit Mandliya
* /
进口 爪哇x.ws.rs.得到;
进口 爪哇x.ws.rs.路径;
进口 爪哇x.ws.rs.路径参数;
进口 爪哇x.ws.rs.产生;
进口 爪哇x.ws.rs.核心.媒体类型;
@路径(“转换服务”)
上市 脚ToInchAndInchToFeetConversionService {
@得到
     @路径(“ / 英寸ToFeet / {i}”)
      @产生(媒体类型.TEXT_XML)
      上市 convertInchToFeet(@路径参数(“一世”) 整型 i) {
        整型 英寸=i;
         = 0;
         =() 英寸/12;
      
        返回 "<InchToFeetService>"
        + "<Inch>" + 英寸 + "</Inch>"
          + "<Feet>" + + "</Feet>"
         + "</InchToFeetService>";
      }
      @路径(“ / 脚ToInch / {f}”)
      @得到
      @产生(媒体类型.TEXT_XML)
      上市 convertFeetToInch(@路径参数(“F”) 整型 f) {
       整型 英寸=0;
          整型 = f;
          英寸 = 12*;
  
          返回 "<FeetToInchService>"
            + "<Feet>" + + "</Feet>"
            + "<Inch>" + 英寸 + "</Inch>"
            + "</FeetToInchService>";
      }
      
      
}
 


@Path(/ your_path_at_class_level) :将路径设置为基本URL + / your_path_at_class_level。基本URL基于您的应用程序名称,servlet和来自web.xml的URL模式” 配置uration file.

@Path(/ your_path_at_method_level):设置基本URL的路径+ / your_path_at_class_level + / your_path_at_method_level

@Produces(MediaType.TEXT_XML [,more-types]):@Produces定义由@GET注释的方法传递哪种MIME类型。在示例文字中(“text/XML”) is produced.

@PathParam: 用于将URL中的值注入到方法参数中。通过这种方式,您可以在convertFeetToInch方法中注入英寸并将其转换为英尺。

6)现在您需要创建 网路.xml 放在下面 /休息fulWebserviceExample / WebContent / WEB-INF /
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
<!- ?XML格式文件 ="1.0" 编码方式=“ UTF-8”?- >
<?XML格式文件 ="1.0" 编码方式=“ UTF-8”?>
<网路-应用程式 XML格式文件ns:si="http://www.w3.org/2001/XMLSchema-instance" XML格式文件ns="http://java.sun.com/xml/ns/javaee" XML格式文件ns:网路="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" si:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" ID=“ WebApp_ID” ="2.5">
  <显示-名称>休息fulWebService示例</显示-名称>
  <小服务程序>
    <小服务程序-名称>泽西岛 休息 服务</小服务程序-名称>
    <小服务程序->com.太阳.球衣.精神.容器.小服务程序.Servlet容器</小服务程序->
    <在里面-参数>
      <参数-名称>com.太阳.球衣.配置.属性.包装</参数-名称>
      <参数->组织.Arpit.爪哇postsforlearning.网页服务</参数->
    </在里面-参数>
    <加载--启动>1</加载--启动>
  </小服务程序>
  <小服务程序-映射>
    <小服务程序-名称>泽西岛 休息 服务</小服务程序-名称>
    <网址-模式>/休息/*</网址-模式>
  </小服务程序-映射>
</网路-应用程式>
 

在上面,放入您的Web服务包。

8) 运行项目:右键点击项目->run 如 ->run 上 server
9)在以下条件下测试您的REST服务:“http:// localhost:8080 / 休息fulWebService示例 / 休息 / 转换次数Service / 脚ToInch / 2”.
您将获得以下输出:

如果您看到Web服务信息页面,则说明您已完成。

创建一个Restful Web 服务客户端:

在org.arpit.javapostsforlearning.websevices.client下创建ConversionServiceClient.java
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
 
组织.Arpit.爪哇postsforlearning.网页服务.客户;
 
进口 爪哇x.ws.rs.核心.媒体类型;
进口 com.太阳.球衣.api.客户.客户;
进口 com.太阳.球衣.api.客户.客户端响应;
进口 com.太阳.球衣.api.客户.Web资源;
进口 com.太阳.球衣.api.客户.配置.客户端配置;
进口 com.太阳.球衣.api.客户.配置.DefaultClientConfig;
 
上市 转换次数ServiceClient {
静态的 最后 休息_URI = “ http:// localhost:8080 / 休息fulWebService示例”;
静态的 最后 INCH_TO_FEET = “ / 转换次数Service / 英寸ToFeet /”;
静态的 最后 FEET_TO_INCH = “ / 转换次数Service / 脚ToInch /”;
 
上市 静态的 虚空 主要([] args) {
 
整型 英寸=12;
整型 =2;
 
客户端配置 配置 = DefaultClientConfig();
客户 客户 = 客户.创造(配置);
Web资源 服务 = 客户.资源(休息_URI);
 
Web资源 addService = 服务.路径(“休息”).路径(INCH_TO_FEET+英寸);
系统..打印(“ INCH_TO_FEET响应:” + 得到Response(addService));
系统..打印(“ INCH_TO_FEET输出为XML:” + 得到OutputAsXML(addService));
系统..打印(“ - ----------------------------------------------- -“);
 
Web资源 子服务 = 服务.路径(“休息”).路径(FEET_TO_INCH+);
系统..打印(“ FEET_TO_INCH响应:” + 得到Response(子服务));
系统..打印(“ FEET_TO_INCH输出为XML:” + 得到OutputAsXML(子服务));
系统..打印(“ - ----------------------------------------------- -“);
 
}
 
私人的 静态的 得到Response(Web资源 服务) {
返回 服务.接受(媒体类型.TEXT_XML).得到(客户端响应.).toString();
}
 
私人的 静态的 得到OutputAsXML(Web资源 服务) {
返回 服务.接受(媒体类型.TEXT_XML).得到(.);
}
}
 

运行以上程序
输出:
1
2
3
4
5
6
7
8
 
INCH_TO_FEET 响应: 得到 http:// localhost:8080 / 休息fulWebService示例 / 休息 / 转换次数Service / 英寸ToFeet / 12返回的响应状态为200 OK
INCH_TO_FEET 输出量 XML格式: 121.0
- - - - - - - - - - - - - - - - - - - - - - - - - -
FEET_TO_INCH 响应: 得到 http:// localhost:8080 / 休息fulWebService示例 / 休息 / 转换次数Service / 脚ToInch / 2返回的响应状态为200 OK
FEET_TO_INCH 输出量 XML格式: 224
- - - - - - - - - - - - - - - - - - - - - - - - - -
 

源代码 :

点击开始

1.2 MB .zip

您也可以检查 重要的宁静面试问题及答案
那’有关Java中Restful Web服务示例的全部内容。


导入联系人

您可能还喜欢:

分享这个

作者

关注作者

相关文章

Comments

  1. 感谢您使用此tuto的质量,当我第一次做tp时,我被阻止了,xml(WADL)标记没有显示在浏览器中,经过数小时的测试,我下载了源代码,我意识到有必要在退货服务级别添加xml标签,这在本教程中不是事实

发表评论 取消回复

您的电子邮件地址不会被公开。 必需的地方已做标记 *

订阅我们的新闻

获取质量教程到您的收件箱。现在订阅。


让’s be Friends

©2020 爪哇2博客