客户端发布webservice项目,服务器端使用webservice简单例子
2017-04-09 22:07
666 查看
客户端发布webservice项目,服务器端使用webservice简单例子。
实体类
客户端
说明:运行main,生成wsdl地址package com.wsService.third; import javax.jws.WebMethod; import javax.jws.WebParam; import javax.jws.WebResult; import javax.jws.WebService; import javax.xml.ws.Endpoint; /** * * @ClassName MobileService * @Description 手机业务类,通过webservice对外提供服务 * 1、声明:@webservice * 2、发布:EndPoint * @author Try_go * @Date 2017年4月6日 下午10:22:43 * @version 1.0.0 */ /** * 注解说明: * @WebMethod(operationName="") 修改方法名 * @WebResult(name="") 修改返回参数名 * @WebParam(name="") 修改输入参数名 @WebService(serviceName="" 修改服务名 * ,targetNamespace="") 修改命名空间,默认包名(取反) * * @WebService 声明该业务类对外提供webservice服务 * @WebMethod(exclude=true) 表示该方法不被发布 */ @WebService(serviceName = "mobileManager", targetNamespace = "http://tttest.ws.com") public class MobileService { @WebMethod(operationName = "getMobileInfo") public @WebResult(name = "mobile") Mobile getPhoneInfo(@WebParam(name = "osName") String osName) { Mobile phone = new Mobile(); if (osName.endsWith("android")) { phone.setName("android"); phone.setOwner("google"); phone.setTotal(70); } else if (osName.endsWith("ios")) { phone.setName("ios"); phone.setOwner("apple"); phone.setTotal(20); } else if (osName.endsWith("windows phone")) { phone.setName("windows phone"); phone.setOwner("microsoft"); phone.setTotal(10); } return phone; } @WebMethod(exclude = true) public void hello(String hello) { System.out.println("你好" + hello); } public static void main(String[] args) { String address = "http://127.0.0.1:8080/ws/MobileService"; /** * 发布webservice服务 publish中第一个为地址,第二位服务的实现对象 */ Endpoint.publish(address, new MobileService()); System.out.println("wsdl地址:" + address + "?WSDL"); } }
实体类
package com.wsService.third; public class Mobile { private String name; //操作系统名 private String owner; //拥有者 private int total; //市场占有率 public String getName() { return name; } public void setName(String name) { this.name = name; } public String getOwner() { return owner; } public void setOwner(String owner) { this.owner = owner; } public int getTotal() { return total; } public void setTotal(int total) { this.total = total; } }
服务端
说明:先要使用wsimport方式生成本地代理,地址用客户端生成的wsdl地址,后将生成的代码复制到项目中。注意,在运行服务端的代码,想得到结果,客户端要保持运行状态。package com.ws.third; /** * * @ClassName TestPhone * @Description 得到third包中发布的webservice的数据 * @author Try_go * @Date 2017年4月6日 下午10:52:59 * @version 1.0.0 */ public class TestMobile { public static void main(String[] args) { // 得到服务 MobileManager ws = new MobileManager(); // 访问方式 MobileService port = ws.getMobileServicePort(); // 输入参数,得结果 Mobile info = port.getMobileInfo("ios"); System.out.println(info.getName() + info.getOwner() + info.getTotal()); } }
相关文章推荐
- java使用UDP来进行客户端和服务器端通信的简单例子
- java使用UDP来进行客户端和服务器端通信的简单例子
- 使用socket 将 服务器端和客户端通信的例子
- webservice delphi客户端 java服务器端 传输简单和复杂对象 小demo
- axis2 webservice 服务器端和客户端实现例子。
- 【转】使用 CXF 做 webservice 简单例子
- 使用axis测试一个简单的webservice的应用例子
- 使用 CXF 做 webservice 简单例子 (转载)
- 简单发布使用NetAdvantage开发的项目
- Android客户端调用服务器端发布的WebService(CXF)
- Java实现的简单的WebService服务发布和Client调用例子
- 使用 CXF 做 webservice 简单例子
- [待总结]webservice概念、简单使用例子
- 使用 CXF 做 webservice 简单例子
- 简单发布使用NetAdvantage开发的项目
- Svn版本控制工具服务器端命令及客户端简单使用
- 使用Axis,在webservice的服务器端如何取到客户端的IP地址
- 简单发布使用NetAdvantage开发的项目
- Webservice学习笔记二,使用Axis发布简单的Web服务
- 使用 CXF 做 webservice 简单例子