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


    本教程需要下载MyEclipse最新版本 。

    MyEclipse官方正版下载

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

    • 开发 REST Web 服务
    • 部署到 Tomcat 服务器
    • 使用 REST Web 服务资源管理器进行测试

    为您生成的方法提供实现

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

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

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

    1. package com.myeclipseide.ws;
    2. import java.util.ArrayList;
    3. import java.util.List;
    4. import java.util.TreeMap;
    5. import javax.ws.rs.Consumes;
    6. import javax.ws.rs.GET;
    7. import javax.ws.rs.POST;
    8. import javax.ws.rs.Path;
    9. import javax.ws.rs.PathParam;
    10. import javax.ws.rs.Produces;
    11. import com.sun.jersey.spi.resource.Singleton;
    12. @Produces("application/xml")
    13. @Path("customers")
    14. @Singleton
    15. public class CustomersResource {
    16. private TreeMap customerMap = new TreeMap();
    17. public CustomersResource() {
    18. // hardcode a single customer into the database for demonstration
    19. // purposes
    20. Customer customer = new Customer();
    21. customer.setName("Harold Abernathy");
    22. customer.setAddress("Sheffield, UK");
    23. addCustomer(customer);
    24. }
    25. @GET
    26. public List getCustomers() {
    27. List customers = new ArrayList();
    28. customers.addAll(customerMap.values());
    29. return customers;
    30. }
    31. @GET
    32. @Path("{id}")
    33. public Customer getCustomer(@PathParam("id") int cId) {
    34. return customerMap.get(cId);
    35. }
    36. @POST
    37. @Path("add")
    38. @Produces("text/plain")
    39. @Consumes("application/xml")
    40. public String addCustomer(Customer customer) {
    41. int id = customerMap.size();
    42. customer.setId(id);
    43. customerMap.put(id, customer);
    44. return "Customer " + customer.getName() + " added with Id " + id;
    45. }
    46. }

    部署 Web 服务应用程序

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

    MyEclipse 执行以下步骤:

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

    1. 右键单击该项目,然后选择 Debug As(或 Run As)>MyEclipse Server Application。
    2. 选择 MyEclipse Tomcat,然后单击 Finish。
      • 打包Web Service 项目并以Exploded格式将其部署到应用程序服务器。
      • 启动应用服务器并加载项目。

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

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

    注意:如果您将 restdemo 部署到 MyEclipse Tomcat 以外的应用程序服务器,则资源管理器中使用的 WADL URL 可能包含不正确的端口,从而阻止资源管理器加载您的 WADL 文件。更正端口,然后单击执行按钮继续。

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

    1. 右键单击restdemo项目,然后选择Web Service Tools>Test with REST Web Services Explorer .
    2. 将树展开到{id}节点,然后选择getCustomer方法。

    1. 单击测试方法。将打开一个新选项卡,您可以在其中输入信息并运行测试。

    1. 在 id 字段中输入 0,然后单击 Run Test图标。

    1. 关闭 getCustomer 选项卡。
    2. 在树中展开add ,选择addCustomer方法,然后单击Test method。
    3. 在 Body 中,键入 addCustomer 选项卡的 application/xml 区域,粘贴以下代码,然后单击。
      1. <customer>
      2. <name>Bill Adama</name><address>Vancouver, Canada</address>
      3. </customer>
    4. 响应确认,客户 Bill Adama 添加了 ID 1。

    1. 关闭 addCustomer 选项卡。
    2. 在customers节点中选择getCustomers ,然后单击Test method。
    3. 单击。服务以 XML 格式返回列表中的两个客户。

    本次MyEclipse使用教程介绍了部署 Web 服务应用程序的相关内容,想要了解全部教程可以直接私聊我哦!

    MyEclipse | 下载试用

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

  • 相关阅读:
    打破JSON的束缚:探寻Spring @JsonComponent的灵活性和扩展性
    arcgis搭建离线地图服务WMTS
    通过IP获取省市区,批量更改
    复旦博士用130行代码解决核酸统计,2分钟完成人工一小时工作量
    分析linux启动内核源码
    高并发系统如何保护系统?
    Flutter安卓状态栏设置为透明
    SqlServer命名规范
    python jieba分词,一次性添加多个词
    spring cloud + shiro 权限认证
  • 原文地址:https://blog.csdn.net/HD202202/article/details/125524729