开发REST网络服务

开发REST网络服务以监听Web应用在此教程示例中,您将创建简单网络服务维护客户链表 。 您将学习 :

  • REST网络服务开发
  • 部署Tomcat服务
  • REST网络服务探索者测试

特征可用MyEclipse.

1. 启动REST网络服务项目

RESTWService项目向导启动您的项目配置

  1. 选择文件>New>Web服务项目
  2. 类型复选项目名字段中选择JAX-RS(RESTWService)框架选项并点击Next

    新wsproject
    创建WebService项目
  3. 接受默认源文件夹并点击Next
  4. 点击Finish接受默认此示例
    newwsprojectfinish
    结束项目

二叉新建REST网络服务

项目建立后,您可创建网络服务创建管理客户实体必备类和资源方法类

2.1 创建客户实体

简单客户类包含id、名和地址字段并表示客户实体使用Web服务管理

  1. 右键点击复选项目并选择新目录
  2. 类型com.myeclipseide.ws包字段类型客户端名字段中清除公共静态原型复选框并点击Finish

    wsnew类
    创建ava类
  3. 以下文代码替换生成类默认内容并保存文件
    m.myeclipseide.ws包import javax.xml.bind.annotation.XmlRootElement!XmlRotElement公共类客户私有字符串名私有字符串地址public int getId公共空置setId公共字符串获取Name公共空白集Name(String名称){此.name=name公共字符串获取地址公共空置地址 {此.address=地址}}

    XML序列化格式send并接收网络服务使用XML实体

    XMLROTEPlement批注JAXB注解允许JAXB将实体从ava转换为XML并回转可注解类内字段和方法定制序列化,但对于此教程,JAXB默认值很好

2.2 创建资源类网络服务核心

  1. 右键点击复选工程并选择 New>Object
  2. 类型web服务滤波字段中选择WebService并点击Next

    wsnewsmenu
    创建新 web服务
  3. 选择ava类创建 web服务选项选择创建新Ja复选框并点击下

    wsnews
    创建新 web服务
  4. 类型客户端URL路径字段中选择单质生命周期选项,选择程序/xml自制下拉类型com.myeclipseide.wsJava包域和类型CustomersResourceJava类字段

    wsnews配置
    web服务配置细节

    URL路径表示可实现此资源的道路面向此教程使用客户,因为此资源管理客户链表资源托管
    单子生命周期保证只有一例本类由泽西/ web应用创建
    损耗产生-可用以指定默认mime类型数据,该资源可接受并生成单项方法可推翻这些值上文提到,你正在串行到 XML,所以你使用程序/xmlMime类型
  5. 点击添加按钮添加获取客户列表法
  6. 类型获取客户方法名字段Java.UITI.List 返回类型字段中并点击Finish

    wsnewmetho
    添加方法

    HTTP方法型型HTTP请求响应
    方法签名预览更新页面,让你知道生成法会像什么
  7. 重新点击添加按钮添加方法返回特定客户细节
  8. 类型获取Customer方法名字段客户端返回类型字段{id}URL路径域

    wsnewmethod2get
    添加二手法
  9. 点击添加按钮添加方法参数类型整数ava类型域CIDava名域中选择路由ParamParam类型下拉和类型标识符参数名域点击完成

    wsnewmethodparameters
    添加方法参数

    URL路径说明可实现该方法的路径,相对含积资源
    例中您指定 {id} 表示此资源法可达/bustomers/{id}曲面括号表示URI变量运行时替换这些变量资源响应基于替换URI的请求
    参数解析直接编辑表内参数因需要id变量值,使用PathParam注解映射到cId参数
  10. 添加方法允许你向列表添加新客户填入下文显示字段并点击Finish

    wsnewmethod3
    创建附加Customer方法

    在这种情况下,你响应POST请求并期望应用/xml输入客户参数为实体参数(una注解),直接从接收请求文体映射sourceService类默认应用/xml输出并指定文本/html

    添加三大方法后,配置应像此:

    sfinionws配置
    终端web服务配置
  11. 点击Finish生成CustomersResource类中打开文件查看流出资源法

3级提供实现你生成方法

现在,你需要为使用向导创建的方法提供实现程序实际应用中, 此时点你可能用JPA或Hibernate连接数据库帮助管理客户链表,

简单化实施服务接收客户时,向实体提供反基id并添加到地图中从地图上取回客户识别码并提供客户链表是直向前向的,如下文所见

客户资源类内容替换为以下代码观察类方法签名没有改变产生根管并实现服务列表中还添加单客户演示

m.myeclipseide.ws包Java.util.ArrayList导入导入java.util.ListJava.UITL.TeeMap导入Javax.ws.s.Javax.ws.s.GET导入Javax.ws.s.POST导入Javax.ws.rs.Path导入Javax.ws.rs.PathParam导入Javax.ws.s.import com.sun.jersey.spi.resource.Singleton!singleton公共类客户资源{私有树马
               
                客户映射=新树映射
                
                 立方公尺公共客户资源{//硬码单客户输入数据库演示//目的customer.setName("Harold Abernathy")!customer.setAddress("Sheffield, UK")!addCustomer(customer)!}@GET公共链表获取Customers {List客户=新数组Listcustomers.addAll(customerMap.values())!回客{回客机map.get/c{ intid=clientMap.sesscustomer.setId(id)!客服Map.put返回Custmer+client.getName+d}}
                
               

4级部署WebService应用

最快速部署 web服务的方式是使用 Run As或Dug As MyEclipse服务器应用动作

  1. 右击工程并选择调试As/MyEclipse服务器应用
  2. 选择 MyEclipseTomcat并点击Finish


    选择服务器部署

MyEclipse执行下列步骤:

  • 包WebService项目并部署爆破格式应用服务器
  • 启动程序服务器并加载项目

MyEclipseWe浏览器打开默认索引.jswebService应用页不需要它是因为你不测试网页 所以你可以关闭视图

5级REST网络服务探索者测试

REST网络服务探索器 MyEclipse标准订阅级别无法使用myEclipse标准订阅程序web服务使用标准浏览器测试.

  1. 右键点击复选项目选择webService工具测试菜单选项在 MyEclipse 2017更新前版本点击这里..

    注释 :myEclipseTomcat以外的程序服务器部署redemo时,探索者使用WADL URL可包含错误端口,防止探索者加载WADL文件校正端口并点击Go按钮继续

    RESTWServiceExspecter点击WebService图标下拉箭头工具栏上选择启动RESTWServiceExplorer在此例中,您必须在地址栏输入WADL文件路径

  2. 扩展树{id}节点选择获取Customer方法论

    wstestm方法
    选择测试方法
  3. 点击测试法.新建标签打开可输入信息并运行测试

    wstestmethodgetcustomer
    GetCustomer测试方法标签
  4. 类型0id字段中并点击Run测试图标.

    wstestmethodrun
    取回列表中唯一客户
  5. 关闭Customer标签
  6. 扩展加法树上选择添加Customer方法并点击测试法.
  7. 体型应用/xml区.
                     
                      
                       比尔阿达马
                      
                      
    温哥华,加拿大
    响应确认客户Bill Adama加IC开工

    wstestmodad
    测试加函数
  8. 关闭附加Customer标签
  9. 选择获取客户客户端节点并点击测试法.
  10. 点击.列表中的两位客户由服务用 XML返回

    wsget压缩器
    取回全部客户链

6级资源类

Baidu
map