一个简单的服务器端和客户端的小程序,带你进入WebService的世界。两横一竖就是干:
一、创建服务器端项目。
1,创建java Project项目,命名为ws_server。
2,创建接口。
package com.liyf.webservice;
import javax.jws.WebMethod;
import javax.jws.WebService;
@WebService
public interface WeatherServiceInter {
@WebMethod
public String getWeatherByCityname(String name);
}
说明:接口用@WebService注解,方法用@WebMethod注解。
3,创建接口的实现类。
package com.liyf.webservice;
import javax.jws.WebService;
@WebService
public class WeatherService implements WeatherServiceInter {
@Override
public String getWeatherByCityname(String name) {
System.out.println(name+"天气晴朗。");
return name+"天气晴朗";
}
}
说明:类上用@WebService注解。
4,发布服务。
package com.liyf.webservice.test;
import javax.xml.ws.Endpoint;
import com.liyf.webservice.WeatherService;
public class ServerTest {
public static void main(String[] args) {
Endpoint.publish("http://localhost:8080/ws_server/weather", new WeatherService());
System.out.println("publish success...");
}
}
到此为止,服务器端程序创建成功,运行后可在浏览器中访问http://localhost:8080/ws_server/weather?wsdl查看是否发布成功。
二、创建客户端项目。
生成客户端代码有多种方式,这里介绍jdk自带的wsimport工具。
1,新建java Project项目,命名为ws_client。
2.win+R输入cmd,打开dos命令,进入到ws_client项目的src目录,输入wsimport -keep http://localhost:8080/ws_server/weather?wsdl,点击回车,出现下图情况即为生成成功。(还可以将http://localhost:8080/ws_server/weather?wsdl生成的文档以wsdl为后缀保存到项目中,输入wsimport -keep wsdl文件的路径执行)
刷新客户端代码会生成如下文件:
3,客户端调用服务器端代码。
控制台正确打印出语句即为调用成功,代码执行完毕。