WebService入门课程(01)
问题1:WebService是用来干什么的? 答:webservice是实现异构平台交互的一种技术 问题2:哪些框架可以帮助我们实现webserbice? 答:CXF Axis Metro这些框架可以帮助我们实现webservice,JAVA自己也可以帮我们实现webservice 问题3:解释下SEI和SIB两个术语 SEI:Service Endpoint Interface 服务端接口 SBI:Service implemetion Bean 问题4:如何用JAVA实现webservice? 1.1、创建接口 package test.my; import javax.jws.WebService; @WebService public interface IMyService { public int add(int a,int b); public int minus(int a,int b); } package test.my; import javax.jws.WebService; @WebService(endpointInterface="test.my.IMyService") public class MyServiceImpl 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; } } package test.my; import javax.xml.ws.Endpoint; public class MyServer { /** * 确定对外公布的服务地址 */ public static void main(String[] args) { String address = "http://localhost:6666/ns"; Endpoint.publish(address,new MyServiceImpl()); } } 问题5如何调用 package test.my; import java.net.MalformedURLException; import java.net.URL; import javax.xml.namespace.QName; import javax.xml.ws.Service; public class TestCilent { public static void main(String[] args) { URL url; try { url = new URL("http://localhost:6666/ns?wsdl"); QName sname = new QName("http://my.test/","MyServiceImplService"); Service service = Service.create(url,sname); IMyService ms = service.getPort(IMyService.class); System.out.println(ms.add(12,33)); } catch (MalformedURLException e) { e.printStackTrace(); } } } class test.my.MyServiceImpl has neither @WebSerivce nor @WebServiceProvider annotation 下节预留问题:这里客户端调用依赖于服务器端接口,这样肯定和实际不符合,实际上客户端是没有服务端这些类和接口的,那么怎么办呢,请看第二节 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |