• Spring发布WebService并调用已有的WebService


    发布WebService

    1.编写生成WebService的Java类

    package com.webService;
    
    import com.service.PianoServiceImpl;
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.support.FileSystemXmlApplicationContext;
    
    import javax.jws.WebMethod;
    import javax.jws.WebResult;
    import javax.jws.WebService;
    
    @WebService(name = "PianoService",serviceName = "PianoWebService")
    public class PianoWebService {
    
        @WebMethod(operationName = "getPrice",action = "getPriceByBrand")
        @WebResult(name="price")
        public int getPriceByBrand(String brand){
    
            ApplicationContext ctx = new FileSystemXmlApplicationContext("src/applicationContext.xml");
            PianoServiceImpl pianoService = (PianoServiceImpl) ctx.getBean("pianoServiceImpl");
            return pianoService.getPriceByBrand(brand);
        }
    }
    
    

    2.发布WebService

    public static void main(String[] args) {
            PianoWebService pianoWebService = new PianoWebService();
            Endpoint.publish("http://localhost:8080/pianowebservice",pianoWebService);
            System.out.println("启动webservice");
    
        }
    

    3.打开浏览器生成URL输入:http://localhost:8080/pianowebservice?wsdl即可浏览到WebService所产生的WSDL全文

    调用已有的WebService

    1.生成对应的Java文件

    C:Program FilesJavajdk1.8.0_73in>wsimport -d F: -s F: -p com http://localhost:8080/pianowebservice?wsdl

    2.把Java文件拷贝到项目中

    3.调用

    PianoWebService pianoWebService = new PianoWebService();
            PianoService pianoService = pianoWebService.getPianoServicePort();
            int price = pianoService.getPrice("IQOO");
            System.out.println("获得价格:"+price);
    

    附常用的WebService目录
    http://www.webxml.com.cn/zh_cn/web_services.aspx

  • 相关阅读:
    Vue如何下载文件?
    vue用template还是JSX?
    2020年的第一件事,我取关了97个公众号
    月经贴 | 2019.12
    CSS——盒子模型(含详解)
    CSS——字体、文本、背景属性设置
    CSS——选择器(三大特性)
    CSS——选择器(本篇介绍八类多种)
    CSS——简介
    WEB前端——body内常用标签(form标签)
  • 原文地址:https://www.cnblogs.com/charlottepl/p/12613530.html
Copyright © 2020-2023  润新知