日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

webService初探

發布時間:2025/4/16 58 豆豆
生活随笔 收集整理的這篇文章主要介紹了 webService初探 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
  • 定義一個接口
    import javax.jws.WebService;

      @WebService
    public interface IMyService {

    ?public int add(int a, int b);

    ?public int minus(int a, int b);
    }
  • 實現類
    import javax.jws.WebService;

    @WebService(endpointInterface="com.gcflower.webservice.service.IMyService")
    public class MyService implements IMyService {

    ?? ?@Override
    ?? ?public int add(int a, int b) {
    ?? ??? ?System.out.println("a+b="+(a+b));
    ?? ??? ?return a+b;
    ?? ?}

    ?? ?@Override
    ?? ?public int minus(int a, int b) {
    ?? ??? ?System.out.println("a-b="+(a-b));
    ?? ??? ?return a-b;
    ?? ?}

    }
  • 發布
    import javax.xml.ws.Endpoint;

    public class MyServer {

    ?? ?public static void main(String[] args) {
    ?? ??? ?String address = "http://localhost:8888/ns";
    ?? ??? ?//發表服務,成功后在瀏覽器輸入address可訪問,輸入http://localhost:8888/ns?wsdl可訪問wsdl的xml格式的文件
    ?? ??? ?Endpoint.publish(address, new MyService());
    ?? ?}
    }
  • 客戶端

    import java.net.MalformedURLException;
    import java.net.URL;

    import javax.xml.namespace.QName;
    import javax.xml.ws.Service;

    public class TestClient {

    ?? ?public static void main(String[] args) {
    ?? ??? ?try {
    ?? ??? ??? ?URL url = new URL("http://localhost:8888/ns?wsdl");
    ?? ??? ??? ?QName sname = new QName("http://service.webservice.gcflower.com/","MyServiceService");
    ?? ??? ??? ?//通過url地址和wsdl文件中的targetNamespace和name屬性的值創建service
    ?? ??? ??? ?Service service = Service.create(url, sname);
    ?? ??? ??? ?//獲取端口對象
    ?? ??? ??? ?IMyService ms = service.getPort(IMyService.class);
    ?? ??? ??? ?System.out.println(ms.add(20, 40));
    ?? ??? ??? ?
    ?? ??? ?} catch (MalformedURLException e) {
    ?? ??? ??? ?e.printStackTrace();
    ?? ??? ?}
    ?? ?}
    }
  • 在dos命令行導出wsdl
    D:\>wsimport -d d:/test/webservice/01/ -keep -verbose http://localhost:8888/ns?wsdl
  •     wsimpor:命令

        d:/test/webservice/01/:導出的目錄

        -keep:生成源碼

        -verbose:顯示詳細信息

        http://localhost:8888/ns?wsdl:服務地址

      在導出的文件中生成了許多其他文件,將生成文件copy到項目的src目錄下,新建一個client,使用如下方式也可訪問:
      public class TestClient {

    ?? ?public static void main(String[] args) {
    ?? ??? ?//新生成的類
    ?? ??? ?MyServiceService mss = new MyServiceService();
    ?? ??? ?IMyService ms = mss.getMyServicePort();
    ?? ??? ?System.out.println(ms.add(40, 50));
    ?? ?}
    ?? ?
    }


    ?

    ?

    轉載于:https://www.cnblogs.com/charleszhang1988/archive/2013/05/29/3107244.html

    總結

    以上是生活随笔為你收集整理的webService初探的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。