zoukankan      html  css  js  c++  java
  • java webservice

    创建一个 webService 工程。

    2. 创建一个普通 Java 类

    1. package com.hmw.jaxws;
    2. /**
    3. * 提供 WebService 服务的测试类<br>
    4. * <b>注意:</b>该类必须有一个无参构造方法,否则无法使用 MyEclipse 的向导为此类创建 jax-ws 的 webService 服务端类<br>
    5. * <b>创建日期</b>:2011-1-17
    6. * @author <a href="mailto:hemingwang0902@126.com" mce_href="mailto:hemingwang0902@126.com">何明旺</a>
    7. */
    8. publicclass HelloJaxws {
    9. public String sayHello(String userName) {
    10. return userName + ",您好,这是我的第一个 jax-ws 程序。";
    11. }
    12. publicint add(int i, int j) {
    13. return i + j;
    14. }
    15. }
    1. package com.hmw.jaxws;    
    2. /**  
    3.  * 提供 WebService 服务的测试类<br>  
    4.  * <b>注意:</b>该类必须有一个无参构造方法,否则无法使用 MyEclipse 的向导为此类创建 jax-ws 的 webService 服务端类<br>  
    5.  * <b>创建日期</b>:2011-1-17  
    6.  * @author <a href="mailto:hemingwang0902@126.com" mce_href="mailto:hemingwang0902@126.com">何明旺</a>  
    7.  */    
    8. public class HelloJaxws {    
    9.     public String sayHello(String userName) {    
    10.         return userName + ",您好,这是我的第一个 jax-ws 程序。";    
    11.     }    
    12.     public int add(int i, int j) {    
    13.         return i + j;    
    14.     }    
    15. }    

    3. 创建 webService 服务端

    HelloJaxwsDelegate.java 的源代码如下:

    1. package com.hmw.jaxws;
    2. @javax.jws.WebService(targetNamespace = "http://jaxws.hmw.com/", serviceName = "HelloJaxwsService", portName = "HelloJaxwsPort", wsdlLocation = "WEB-INF/wsdl/HelloJaxwsService.wsdl")
    3. publicclass HelloJaxwsDelegate {
    4. com.hmw.jaxws.HelloJaxws helloJaxws = new com.hmw.jaxws.HelloJaxws();
    5. public String sayHello(String userName) {
    6. return helloJaxws.sayHello(userName);
    7. }
    8. publicint add(int i, int j) {
    9. return helloJaxws.add(i, j);
    10. }
    11. }
    1. package com.hmw.jaxws;    
    2. @javax.jws.WebService(targetNamespace = "http://jaxws.hmw.com/", serviceName = "HelloJaxwsService", portName = "HelloJaxwsPort", wsdlLocation = "WEB-INF/wsdl/HelloJaxwsService.wsdl")    
    3. public class HelloJaxwsDelegate {    
    4.     com.hmw.jaxws.HelloJaxws helloJaxws = new com.hmw.jaxws.HelloJaxws();    
    5.     public String sayHello(String userName) {    
    6.         return helloJaxws.sayHello(userName);    
    7.     }    
    8.     public int add(int i, int j) {    
    9.         return helloJaxws.add(i, j);    
    10.     }    
    11. }   

    4. 导入相关的 jar 包,并将项目布署到 tomcat,启动 tomcat.

    整个项目的目录结构如下图所示:

    5. 创建 webService 客户端项目(普通 Java 项目)。

    6. 创建客户端相关调用类

    7. 创建测试类

    测试类 ClientTest.java 的代码如下:

    1. package com.hmw.client.jaxws;
    2. publicclass ClientTest {
    3. publicstaticvoid main(String[] args) {
    4. HelloJaxwsDelegate service = new HelloJaxwsService().getHelloJaxwsPort();
    5. System.out.println(service.sayHello("hemingwang"));
    6. System.out.println("result is: " + service.add(1, 2));
    7. }
    8. }
    1. package com.hmw.client.jaxws;    
    2. public class ClientTest {    
    3.     public static void main(String[] args) {    
    4.         HelloJaxwsDelegate service = new HelloJaxwsService().getHelloJaxwsPort();    
    5.             System.out.println(service.sayHello("hemingwang"));    
    6.             System.out.println("result is: " + service.add(12));    
    7.         }    
    8.     }    

    整个项目的目录结构如下图所示:

    8. 运行测试类

    运行结果如下图所示:

  • 相关阅读:
    surging+EFCore 服务实现入门
    surging+CentOS7+docker+rancher2.0 入门部署教程
    Aspnet Zero中使用Windows service (Topshelf)来承载Quartz.net任务
    解决 EntityFrameworkCore tool 3.1 init.ps1 is not recognized 问题
    基于Bitnami gitlab OVA包的gitlab 环境搭建
    基于ng-zorro的ASP.NET ZERO前端实现
    图像滑动窗口分割
    论文答辩准备
    transgan_pytorch
    Pytorch常用代码整理
  • 原文地址:https://www.cnblogs.com/shaohz2014/p/3685314.html
Copyright © 2011-2022 走看看