WebService个人学习记录

Webservice定义

概念

SOAP协议:Simple Object Access Protocal 简单对象访问协议

WSDL:WebService描述语言,使用XML语言,人机可读。

UDDI:统一发现、发布和集成协议。企业可以使用它对WebService进行注册和搜索。

一般WebService分两种

   REST式,基于HTTP协议;

   RPC式,基于SOAP协议,SOAP也是基于HTTP传输。狭义上的WebService是指基于SOAP协议的。


示例

   HelloWorld WebService

   Server端  发布WebService

package webservice.server;

import javax.jws.WebService;
import javax.xml.ws.Endpoint;

@WebService
public class Hello {

	public String sayHello(String name){
		return "hello "+name;
	}
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		Endpoint.publish("http://localhost:8080/webservice.server.Hello", new Hello());
		System.out.println("Hello WebService has been published!");
	}

}

操作:运行main方法,打印”Hello WebService has been published!“,成功对外发布WebService。

说明:Http信息为 http://(地址):端口/包名+类名,(其实对外发布http地址可以任意定制,用上述方式命名是为了方便描述类信息)

客户端

   在命令行输入命令

wsimport -p [包名] -keep [发布的服务地址?wsdl]

生成客户端代码,如生成本例的客户端代码

wsimport -p webservice.client -keep http://localhost:8080/webservice.server.Hello?wsdl

会在文件夹webservice/client下生成代码及编译文件,文件结构为

+webservice

   +client

      Hello.java(接口,不是server端的Hello.java)

      HelloService.java

      ObjectFactory.java

      package-info.java

      SayHello.java

      SayHelloResponse.java

利用这些生成的客户端代码,就可以调用这个WebService服务了。


调用服务

package webservice.client;

public class HelloClient {

	public static void main(String[] args) {
		Hello hello = new HelloService().getHelloPort();
		String info = hello.sayHello("webservice!");
		System.out.println(info);
	}

}

输出:hello webservice!


参考资料

http://www.360doc.com/content/11/1104/16/1073512_161674938.shtml

Web服务(Web Services)是一种基于Web的软件系统,用于支持机器之间的交互式机器通信。Web服务基于开放的标准和协议,如XML, SOAP, WSDL和UDDI等,这些标准和协议使得Web服务可以在不同的平台和编程语言之间进行交互。Web服务架构通常包括三个主要组件:服务提供者、服务请求者和服务注册中心。 学习WebService需要掌握以下几个方面: 1. XML和SOAP Web服务使用XML作为数据交换格式,SOAP作为传输协议。因此,学习WebService需要掌握XML和SOAP的基本知识,了解XML文档的结构、语法和DTD、Schema等相关规范。同时,需要掌握SOAP协议的基本结构、消息格式和传输方式等内容。 2. WSDL WSDL(Web Services Description Language)是Web服务的描述语言,用于描述Web服务的接口、参数、返回值等信息。学习WebService需要掌握WSDL的基本语法、结构和元素等内容,了解如何使用WSDL来描述Web服务。 3. UDDI UDDI(Universal Description, Discovery, and Integration)是Web服务的注册中心,用于注册、发布和查找Web服务。学习WebService需要了解UDDI的基本原理、功能和使用方法,掌握如何使用UDDI来注册和查找Web服务。 4. Web服务框架 Web服务框架是实现Web服务的一种技术,常用的Web服务框架包括Apache Axis、Apache CXF、Spring Web Services等。学习WebService需要了解这些框架的特点、使用方法和配置方式,了解如何使用这些框架来实现Web服务。 总之,学习WebService需要掌握XML和SOAP的基本知识、WSDL的语法和结构、UDDI的原理和使用方法,以及Web服务框架的特点和使用方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值