webservice(一)简单的webservice实例
webservice基础知识 异构平台间的交互
WSDL基础: SOAP:Simple object access Protocol(协议) 实例: package org.sid.service; import javax.jws.WebParam; import javax.jws.WebResult; import javax.jws.WebService; @WebService public interface IMyService { @WebResult(name="addResult") public int add(@WebParam(name="a")int a,@WebParam(name="b")int b); @WebResult(name="minusResult") public int minus(@WebParam(name="a")int a,@WebParam(name="b")int b); @WebResult(name="login") public User login(@WebParam(name="username")String username,@WebParam(name="password")String password); } package org.sid.service; import javax.jws.WebParam; import javax.jws.WebResult; import javax.jws.WebService; @WebService(endpointInterface="org.sid.service.IMyService") public class MyServiceImpl implements IMyService { @Override public int add(int a,int b) { System.out.println(a+b); return a+b; } @Override public int minus(int a,int b) { System.out.println(a-b); return a-b; } @Override @WebResult(name = "login") public User login(@WebParam(name = "username") String username,@WebParam(name = "password") String password) { User user = new User(); user.setUsername(username); user.setPassword(password); return user; } } package org.sid.service; 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()); } } package org.sid.service; 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 { //创建访问的wsdl服务器地址url URL url = new URL("http://localhost:6666/ns?wsdl"); //通过Qname致命服务的具体信息namespaceURI和localPart在http://localhost:6666/ns?wsdl中查找 QName qname = new QName("http://service.sid.org/","MyServiceImplService"); //创建服务 Service service = Service.create(url,qname); //实现接口(依赖于接口了) IMyService ms = service.getPort(IMyService.class); ms.add(23,21); } catch (MalformedURLException e) { e.printStackTrace(); } } } wsimport之后,将生成的文件考入新的client项目中 使用如下客户端调用: package org.sid.service; public class TestClient2 { public static void main(String[] args) { MyServiceImplService msis = new MyServiceImplService(); IMyService ms = msis.getMyServiceImplPort(); ms.add(12,2); } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |