• Java开发WebService实例(1)


    参考文献:http://blog.sina.com.cn/s/blog_7bd0d6a70101dixc.html

    简单的java工程实现

    1 首先建立一个Java工程,在里面建一个Web services Endpoint,代码如下:

    package Com.WebService.Service;
    
    import javax.jws.WebMethod;
    import javax.jws.WebService;
    import javax.xml.ws.Endpoint;
    
    @WebService
    public class Hello {
    
        @WebMethod
        public String Greeting(String str) {
            return "Hello" + str;
        }
    
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            try {
                Hello hello = new Hello();
                @SuppressWarnings("unused")
                Endpoint endPoint = Endpoint.publish("http://localhost:7890/hello",
                        hello);
                System.out.print("访问服务已经启动...");
            } catch (Exception ex) {
                System.out.println("访问服务启动出错:" + ex.getMessage().toString());
            }
        }
    
    }

    编译运行该java文件,在浏览器中输入http://localhost:7890/hello,可以看到如下图:

    点击超链接:http://localhost:7890/hello?wsdl,结果如下图所示:

    2 使用wsimport生成客户端

    使用如下:wsimport -s -keep http://localhost:7890/hello?wsdl

         命令参数说明:
      -d:生成客户端执行类的class文件的存放目录
      -s:生成客户端执行类的源文件的存放目录
      -p:定义生成类的包名

    结果如下:

    3 编写客户端程序

    新建Java工程,将上图中的java文件复制到工程的对应目录下,构建客户端程序,代码如下:

    package com.WebClientExt.main;
    
    import com.webservice.service.Hello;
    import com.webservice.service.HelloService;
    
    public class WebClientExt {
        public static void main(String args[]){
            HelloService hello = new HelloService();
            Hello helloProxy = hello.getHelloPort();
            String returnStr = helloProxy.greeting("amy");
            System.out.println("返回数据为:" + returnStr);
        }
    }

    运行程序,结果如下:

    作者:BestNow
    出处:http://www.cnblogs.com/BestNow/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    【原】OpenEdx平台安装及出错解决方案
    【转】R语言中的并行计算——搭建R的集群
    【转】机器学习中的相似性度量
    A--Scikit-Learn入门
    A--最近邻分类器-KNN
    A--K-Means快速聚类
    A--无监督学习算法示例: DBSCAN(聚类)
    A-无监督学习算法示例:层次聚类
    A-岭回归的python'实现
    A--利用梯度下降求解逻辑回归的python实现
  • 原文地址:https://www.cnblogs.com/tianxue/p/4089897.html
Copyright © 2020-2023  润新知