jdk自带了发布web服务的功能,所以我们也可以自己写一个web服务供别人调用,不过一般都是我们去调用别人写好的web服务。
1、新建一个webservice_service项目,即为服务的提供方
@WebService
public class MyService {
//提供一个名为doService的服务
public String doService(String name){
System.out.println("web服务正在运行...");
return "hello:"+name;
}
//发布服务
public static void main(String[] args) {
//第一个参数称为Binding即绑定地址
//第二个参数是实现者,即谁提供服务
Endpoint.publish("http://localhost:8888/webService", new MyService());
}
}
让其运行main方法,并且在浏览器中输入http://localhost:8888/webService?wsdl,出现以下页面,说明服务发布成功
2、使用命令wsimport -s . http://localhost:8888/webService?wsdl导入web服务所需的类
3、创建webservice_client项目,并将web服务所需包导入,通过以下代码即可调用web服务
public class client {
public static void main(String[] args) {
MyServiceService service = new MyServiceService();
MyService proxy = service.getMyServicePort();
String answer = proxy.doService("world!");
System.out.println(answer);
}
}
web服务调用成功,运行效果如图: