Webservice_01_快速实例

来源:互联网 发布:2016淘宝直通车卡首屏 编辑:程序博客网 时间:2024/05/21 00:49

非常感谢孙浩老师的视频和资料。

 

接口:

package cn.lichen.webservice;import javax.jws.WebService;@WebServicepublic interface IMyService {public int add(int a,int b);public int minus(int a,int b);}


实现:

package cn.lichen.webservice;import javax.jws.WebService;@WebService(endpointInterface="cn.lichen.webservice.IMyService")public class MyServiceImpl implements IMyService {@Overridepublic int add(int a, int b) {System.out.println(a+"+"+b+"="+(a+b));return (a+b);}@Overridepublic int minus(int a, int b) {System.out.println(a+"-"+b+"="+(a-b));return (a-b);}}


“服务器”:

package cn.lichen.webservice;import javax.xml.ws.Endpoint;public class MyService {public static void main(String[] args) {String address = "http://localhost:8888/ns";Endpoint.publish(address, new MyServiceImpl());}}


 

“客户端”:

package cn.lichen.webservice;import java.net.MalformedURLException;public class Client {public static void main(String[] args) {try {//创建访问wsdl服务地址的urlURL url = new URL("http://localhost:8888/ns?wsdl");//通过Qname指明服务的具体信息QName sname = new QName("http://webservice.lichen.cn/", "MyServiceImplService");//创建服务Service service = Service.create(url,sname);//实现接口IMyService ms = service.getPort(IMyService.class);System.out.println(ms.minus(88, 66));//以上服务有问题,依然依赖于IMyServie接口} catch (MalformedURLException e) {e.printStackTrace();}}}


 

先启动“服务器”,再启动“客户端”,就能得到结果。 

注意 接口添加@WebService 和 实现 添加 @WebService(endpointInterface="cn.lichen.webservice.IMyService")

 

浏览器打开指定的URL:http://localhost:8888/ns?wsdl

 

注意namespace和definitions name为Client的Qname的参数。

原创粉丝点击