WebService开发服务端

来源:互联网 发布:形容网络喷子 编辑:程序博客网 时间:2024/05/19 13:55

1.WebService的三种规范

AVA 中共有三种WebService 规范,分别是JAXM&SAAJ、JAX-WS(JAX-RPC)、JAX-RS。
这里就不进行详细介绍,我们先采用JAX-WS开发服务端

2.开发步骤

  • a.定义并实现接口
SEI(Service Endpoint Interface)public interface WeatherInterface {public String queryWeather(String cityName);}
@WebServicepublic class WeatherInterfaceImpl implements WeatherInterface{@Overridepublic String queryWeather(String cityName) {System.out.println("from client.."+cityName);String result="晴";System.out.println("to client.."+result);return result;}}

在实现类上一定要加上@WebService

  • b.发布服务
public class WeatherServer {public static void main(String[] args) {Endpoint.publish("http://127.0.0.1:12345/weather", new WeatherInterfaceImpl());}}
  • c.验证服务是否发送成功

验证webservice服务是否发布成功
http://127.0.0.1:12345/weather?wsdl查看
根据下面的service找到binding
这里写图片描述
根据binding找到type
这里写图片描述
找到portType
这里写图片描述
完成这些步骤,说明服务发布成功了!!

  • d.wsimport根据发布的服务自动生成代码

在控制台上

wsimport  -s xxx  http://127.0.0.1:12345/weathers?wsdl

xxx写本地存放生成代码的目录
这里写图片描述
大功告成!
e.使用生成的代码调用服务

public static void main(String[] args) {WeatherInterfaceImplService s=new WeatherInterfaceImplService();WeatherInterfaceImpl weatherInterfaceImplPort = s.getWeatherInterfaceImplPort();weatherInterfaceImplPort.queryWeather("je");}

这就是整个WebService采用JAX-WS规范编写的服务发布调用过程。