Web Service简介
Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的独立的通讯技术。
Web services 平台的元素:
SOAP (简易对象访问协议)
UDDI (通用描述、发现及整合)
WSDL (Web services 描述语言)
Java + Web Service
Service端
@WebService
public class JwsServiceHello {
/**
* 供客户端调用方法,会被发布
*
* @param name
* 传入参数
* @return String 返回结果
*/
public String getValue(String name) {
return "欢迎你! " + name;
}
/**
* 方法上加@WebMentod(exclude=true)后,此方法不被发布;
*
* @param name
* @return
*/
@WebMethod(exclude = true)
public String getHello(String name) {
return "你好! " + name;
}
}
@WebService把这个类指定为一个jws的服务端,然后通过端点服务发布WebService
public static void main(String[] args) {
/*
* 参数:1,本地的服务地址; 2,提供服务的类;
*/
Endpoint.publish("http://127.0.0.1:1111/WebServiceDemo/ServiceHello", new JwsServiceHello());
}
再发布成功后,在浏览器输入http://127.0.0.1:1111/WebServiceDemo/ServiceHello?wsdl看到一个xml格式的文档,上面就是刚刚发布的webservice的请求和返回数据的格式类型和接口信息
Client端
web service client端可以通过工具调用wsdl生成,在jdk中就自带了一个这种工具wsimport,这是由sun为我们免费提供的的。功能强大
调用wsimport工具。打开dos窗体。输入命令:
wsimport -d D:\ws_client -keep -verbose http://127.0.0.1:1111/WebServiceDemo/ServiceHello?wsdl
参数说明
1. -d 表示输出的文件夹。文件夹必须事先存在,否则导出失败。
2. -keep 表示导出webservice的class文件时是否也导出源码java文件。
3. -verbose verbose表示具体信息。
执行语句后,生成代码如下图
新建一个java项目,把图中的java文件复制到该项目中,然后就可以编写client代码调用web service
通过返回可知,调用成功