Java IDE MyEclipse 使用教程:创建一个新的 REST Web 服务(二)

本次MyEclipse使用教程介绍了部署 Web 服务应用程序的相关内容。

本教程需要下载

MyEclipse中开发 REST Web 服务以增强您的 Web 应用程序。在本教程示例中,您将创建一个简单的 Web 服务来维护客户列表。您将学会:

  • 开发 REST Web 服务
  • 部署到 Tomcat 服务器
  • 使用 REST Web 服务资源管理器进行测试
为您生成的方法提供实现

现在,您需要为使用向导创建的方法提供实现。在实际应用程序中,此时您可能会使用 JPA 或 Hibernate 连接到数据库以帮助管理客户列表,但是对于本教程来说,一个简单的内存映射就足够了。

实现很简单;当服务接收到客户时,您为实体提供基于计数器的 id 并将其添加到地图中。通过 id 从该地图中检索客户并提供客户列表非常简单,如下所示。

将 CustomersResource 类中的内容替换为以下代码。观察类和方法签名没有改变。您正在使用服务的实现来充实生成的存根。出于演示目的,您还可以将单个客户添加到列表中。

package com.myeclipseide.ws;import java.util.ArrayList;import java.util.List;import java.util.TreeMap;import javax.ws.rs.Consumes;import javax.ws.rs.GET;import javax.ws.rs.POST;import javax.ws.rs.Path;import javax.ws.rs.PathParam;import javax.ws.rs.Produces;import com.sun.jersey.spi.resource.Singleton;@Produces("application/xml")@Path("customers")@Singletonpublic class CustomersResource {private TreeMap customerMap = new TreeMap();public CustomersResource() {    // hardcode a single customer into the database for demonstration    // purposes    Customer customer = new Customer();        customer.setName("Harold Abernathy");        customer.setAddress("Sheffield, UK");        addCustomer(customer);    }@GET    public List getCustomers() {        List customers = new ArrayList();        customers.addAll(customerMap.values());        return customers;    }@GET    @Path("{id}")    public Customer getCustomer(@PathParam("id") int cId) {        return customerMap.get(cId);    }@POST    @Path("add")    @Produces("text/plain")    @Consumes("application/xml")    public String addCustomer(Customer customer) {        int id = customerMap.size();        customer.setId(id);        customerMap.put(id, customer);        return "Customer " + customer.getName() + " added with Id " + id;    }},>,>
部署 Web 服务应用程序

部署 Web 服务的最快方法是使用 Run As 或 Debug As MyEclipse Server Application 操作。

  1. 右键单击该项目,然后选择 Debug As(或 Run As)>MyEclipse Server Application。
  2. 选择 MyEclipse Tomcat,然后单击 Finish。
  3. 使用 MyEclipse 应用服务器

    MyEclipse 执行以下步骤:

  • 打包Web Service 项目并以Exploded格式将其部署到应用程序服务器。
  • 启动应用服务器并加载项目。

MyEclipse Web 浏览器打开我们的 Web 服务应用程序的默认index.jsp页面。你不需要这个,因为你没有测试一个 页,所以你可以关闭这个视图。

使用 REST Web 服务资源管理器进行测试

REST Web 服务资源管理器在 MyEclipse 标准订阅级别不可用。如果您是 MyEclipse Standard 订阅者,请按照使用标准浏览器测试 Web 服务中的说明进行操作。

  1. 右键单击restdemo项目,然后选择Web Service Tools>Test with REST Web Services Explorer .
  2. 注意:如果您将 restdemo 部署到 MyEclipse Tomcat 以外的应用程序服务器,则资源管理器中使用的 WADL URL 可能包含不正确的端口,从而阻止资源管理器加载您的 WADL 文件。更正端口,然后单击执行按钮继续。

    您还可以通过单击工具栏上 Web 服务资源管理器图标上的下拉箭头 并选择启动 REST Web 服务资源管理器来打开 REST Web 服务资源管理器。在这种情况下,您必须在地址栏中输入 WADL 文件的路径才能继续操作。

  3. 将树展开到{id}节点,然后选择getCustomer方法。
  4. 使用 MyEclipse 应用服务器
  5. 单击测试方法。将打开一个新选项卡,您可以在其中输入信息并运行测试。
  6. 使用 MyEclipse 应用服务器
  7. 在 id 字段中输入 0,然后单击 Run Test图标。
  8. 使用 MyEclipse 应用服务器
  9. 关闭 getCustomer 选项卡。
  10. 在树中展开add ,选择addCustomer方法,然后单击Test method。
  11. 在 Body 中,键入 addCustomer 选项卡的 application/xml 区域,粘贴以下代码,然后单击。
    <customer>    <name>Bill Adama</name><address>Vancouver, Canada</address></customer> 
  12. 响应确认,客户 Bill Adama 添加了 ID 1。
  13. 使用 MyEclipse 应用服务器
  14. 关闭 addCustomer 选项卡。
  15. 在customers节点中选择getCustomers ,然后单击Test method。
  16. 单击。服务以 XML 格式返回列表中的两个客户。
  17. 使用 MyEclipse 应用服务器

本次MyEclipse使用教程介绍了部署 Web 服务应用程序的相关内容,想要了解全部教程

Java IDE MyEclipse 使用教程:创建一个新的 REST Web 服务(二)

MyEclipse V2022.1正式发布,大家可以下载MyEclipse官方正版试用,更多MyEclipse价格咨询可联系在线客服。

MyEclipse | 下载试用

MyEclipse是功能最全面、性价比最高的企业级Java IDE之一。


MyEclipse

标签:

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年5月26日
下一篇 2022年5月26日

相关推荐

发表回复

登录后才能评论