Webservice(实践)——入门实例
JDK1.6以后自带Webservice服务,因此这篇我们先通过一种简单的,基于代码优先的方式来理解一下Webservice 一、什么是Webservice? Web service是一个平台独立的,低耦合的,自包含的、基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序。(摘自百度百科!) 看其描述:一句话归纳一下,开发分布式的互操作的应用程序!而且这种程序不关乎平台,主要用来实现异构系统交互! 二、实例1、提供接口
<span style="font-size:18px;">IMyservice: import javax.jws.WebService; @WebService public interface IMyservice { public int add(int a,int b); public int minus(int a,int b); }</span> 2、提供实现类
Myservice: import javax.jws.WebService; @WebService(endpointInterface="com.tgb.service.IMyservice") public class Myservice implements IMyservice { @Override public int add(int a,int b) { System.out.println("a+b="+a+b); return a+b; } @Override public int minus(int a,int b) { System.out.println("a-b="+(a-b)); return a-b; } } 3、发布服务 <span style="font-size:18px;"> public class Myserver { public static void main(String[] args) { String address="http://localhost:6666/ns"; Endpoint.publish(address,new Myservice()); } }</span> 4、查看服务 ps:Webservice的核心——wsdl!都在上图中(types,message,porttype,binding,service (没截出来))这就是wsdl的五大核心内容! 5、客户端调用 import java.net.MalformedURLException; import java.net.URL; import javax.xml.namespace.QName; import javax.xml.ws.Service; public class TestClient { public static void main(String[] args) { try { //webservice服务的发布路径 URL url=new URL("http://localhost:6666/ns?wsdl"); //发布的服务的名称 QName qname=new QName("http://service.tgb.com/","MyserviceService"); //获取服务 Service service=Service.create(url,qname); IMyservice myservice=service.getPort(IMyservice.class); System.err.println(myservice.add(12,22)); } catch (MalformedURLException e) { e.printStackTrace(); } } } 服务端效果: 由于实现类那里写的有点问题,打印的成字符串了!所以服务端出的结果不太理想,将就一下吧;可以修改一下实现类! 客户端效果: PS这里是“伪客户端”,理论上来说,应该模拟另一个java项目或程序,但是这里没有通过ws-import导出Webservice服务,因此这里就模拟在了同一个项目中!主要目的在于宏观上了解一下Webservice的相关内容 三、未完待续这里只是通过JDK自带的注解简单实现了一下Webservice的大体流程和整体印象!至于其核心,WSDL以及具体的完整实例,后续博客继续!【提示:这是代码优先,即先提供接口与服务,然后发布成wsdl;如果基于契约优先,我们需要先编写wsdl然后在导出服务!】 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |