• Web Service


    Web Service全称XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的独立的通讯技术。是:通过SOAP在Web上提供的软件服务,使用WSDL文件进行说明,并通过UDDI进行注册。


    XML:(Extensible Markup Language)扩展型可标记语言。面向短期的临时数据处理、面向万维网络,是Soap的基础。


    Soap:(Simple Object Access Protocol)简单对象存取协议。是XML Web Service 的通信协议。当用户通过UDDI找到你的WSDL描述文档后,他通过可以SOAP调用你建立的Web服务中的一个或多个操作。SOAP是XML文档形式的调用方法的规范,它可以支持不同的底层接口,像HTTP(S)或者SMTP。


    WSDL:(Web Services Description Language) WSDL 文件是一个 XML 文档,用于说明一组 SOAP 消息以及如何交换这些消息。大多数情况下由软件自动生成和使用。


    UDDI (Universal Description, Discovery, and Integration) 是一个主要针对Web服务供应商和使用者的新项目。在用户能够调用Web服务之前,必须确定这个服务内包含哪些商务方法,找到被调用的接口定义,还要在服务端来编制软件,UDDI是一种根据描述文档来引导系统查找相应服务的机制。UDDI利用SOAP消息机制(标准的XML/HTTP)来发布,编辑,浏览以及查找注册信息。它采用XML格式来封装各种不同类型的数据,并且发送到注册中心或者由注册中心来返回需要的数据。


    JAX-WS是什么:

    JSX—WS(Java API for XML Web Service)。他是用来简化使用java构造web服务和web服务客户端的工作的技术。


    Web服务(项目中的流程)

     方案一:在地址栏输入URL,http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx?wsdl


    方案二:通过Java代码实现

    如图所示:

     测试类:

    1
    2
    3
    4
    5
    6
    public static void main(String[] args) {
            MobileCodeWS ws=new MobileCodeWS();
            MobileCodeWSSoap soap=ws.getMobileCodeWSSoap();
            String address = soap.getMobileCodeInfo("1345338""");
            System.out.println(address);
        }


    方案三:使用JAX-WS发布服务

    定义服务器类以及方法[HelloService]

    使用@WebService注解,标识一个java类或一个接口作为一个服务

     服务正在监听...

    在浏览器中测试:

    同理 cmd命令解析该文档的类或方法[客户端]

    新建一个工程,运用这些类,进行测试

     

     MyTest测试类:

    1
    2
    3
    4
    5
    6
    7
    public class MyTest {
    public static void main(String[] args) {
        HelloServiceService service=new HelloServiceService();
        HelloService hs = service.getHelloServicePort();
        hs.say("二傻");
    }
    }

  • 相关阅读:
    解决Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.j...
    Docker容器无法启动,里面的配置文件如何修改
    C# lamada find
    【Redis】arm64架构,docker的Redis出现Failed to test the kernel for a bug that could lead to data corruption
    启动Docker容器报错:Error response from daemon: driver failed programming external connectivity
    redis OCI runtime exec failed: exec failed:解决方法
    如何远程访问 Redis
    nanopi r2c上docker安装甜糖
    Net6 EfCore 值对象类型和从属实体类型
    Net6 控制台程序引入Nlog 、Nlog配置文件解读
  • 原文地址:https://www.cnblogs.com/hero96/p/6193714.html
Copyright © 2020-2023  润新知