webservice篇之简单开发(二)
2017-02-06 10:41
204 查看
发布webservice接口通常有两种方式,1是通过自分环境的jdk,再jdk的api里有对webservice的相关属性介绍,2是借助cxf框架发布webservice接口;
发布接口的流程大致分为为:服务端与客户端;
服务端:开发webservice的业务接口及实现,用(jvm )java虚拟机或服务器,如tomcat发布在服务器上,暴露出来
客户端:获取服务端的发布接口的url或wsdl文档(开发接口的相关描述,通过wsdl生成的相关接口及实现类,来调用服务端上的代码;
流程大致为,服务端发布webservice接口及实现类,通过wsdl暴露在服务端上,客户端通过获取服务端的wsdl得到的相关类而获取服务端的代理类,通过soap协议发送相关请求,调用服务端的相关代码(拦截器后面再说)
现在我说先怎么通过cxf来开发webservice(jdk了解下就行)
cxf有很多版本,我用的是3.16,有很多人都是用2.7版本的,大同小异而已,等下我会把3.16的cxf的jar包及代码会压缩下来,供下载,如果自己还行,可以根据我提供的代码,jar包进行编码!.
jar包下载地址:http://download.csdn.net/detail/rainjm/9743866
第一步,在你的开发工具里建立一个web工程;
第二步,导入cxf的jar包(略)
第三部,服务端创建接口并发布
接口代码:
package com.azj.service;
import javax.jws.WebService;
@WebService
public interface oderSel {
public String getName(String name);
}
接口实现代码:
package com.azj.service;
import javax.jws.WebService;
@WebService(endpointInterface="com.azj.service.oderSel",serviceName="orderSeiImpl")
public class orderSeiImpl implements oderSel {
@Override
public String getName(String name) {
return "你好:"+name;
}
}
发布:
package com.azj.service;
import javax.xml.ws.Endpoint;
public class Te {
public static void main(String[] args) {
Endpoint.publish("http://localhost:8080/fb", new orderSeiImpl());//访问地址自己可以随意谢,后面接接口实现类
System.out.println("发布成功!");
}
}
在游览器上输入访问http://localhost:8080/fb?wsdl 看是否生成xml文档。
第四步:客户端发送参数并接受数据:
通过接受的xml文档用cmd生成相关类进行调用:
打开本电脑的cmd小窗口,进入该项目类的src路径下:
Microsoft Windows [版本 10.0.14393]
(c) 2016 Microsoft Corporation。保留所有权利。
C:\Users\qwe>f:
F:\>cd F:\eclipse_e
4000
exm\webservice-spring\src
F:\eclipse_eexm\webservice-spring\src>wsdl2java -p com.azj.client http://localhost:8080/fb?wsdl
F:\eclipse_eexm\webservice-spring\src>
其中wsdl2java生成类命令,-p生成的包 后接发布的wsdl文档访问路径
第五步:调用服务端数据:
package com.azj.client;
public class Te {
public static void main(String[] args) {
OrderSeiImpl od=new OrderSeiImpl();//这里是接口的实现类,对于发布xml文档里的
//<wsdl:service name="orderSeiImpl">
//<wsdl:port binding="tns:orderSeiImplSoapBinding" name="orderSeiImplPort">
//<soap:address location="http://localhost:8080/fb"/>
//</wsdl:port>
// </wsdl:service>
OderSel proxy = od.getOrderSeiImplPort();//这里是生成的代理类,对于服务端的接口
String name = proxy.getName("azj");
System.out.println(name);
}
}
简单发布与接收就完成啦!
看看xml里面内容的文档讲解,对于理解开发,调用有帮助!
地址:http://blog.csdn.net/liguocai2005/article/details/4402350
发布接口的流程大致分为为:服务端与客户端;
服务端:开发webservice的业务接口及实现,用(jvm )java虚拟机或服务器,如tomcat发布在服务器上,暴露出来
客户端:获取服务端的发布接口的url或wsdl文档(开发接口的相关描述,通过wsdl生成的相关接口及实现类,来调用服务端上的代码;
流程大致为,服务端发布webservice接口及实现类,通过wsdl暴露在服务端上,客户端通过获取服务端的wsdl得到的相关类而获取服务端的代理类,通过soap协议发送相关请求,调用服务端的相关代码(拦截器后面再说)
现在我说先怎么通过cxf来开发webservice(jdk了解下就行)
cxf有很多版本,我用的是3.16,有很多人都是用2.7版本的,大同小异而已,等下我会把3.16的cxf的jar包及代码会压缩下来,供下载,如果自己还行,可以根据我提供的代码,jar包进行编码!.
jar包下载地址:http://download.csdn.net/detail/rainjm/9743866
第一步,在你的开发工具里建立一个web工程;
第二步,导入cxf的jar包(略)
第三部,服务端创建接口并发布
接口代码:
package com.azj.service;
import javax.jws.WebService;
@WebService
public interface oderSel {
public String getName(String name);
}
接口实现代码:
package com.azj.service;
import javax.jws.WebService;
@WebService(endpointInterface="com.azj.service.oderSel",serviceName="orderSeiImpl")
public class orderSeiImpl implements oderSel {
@Override
public String getName(String name) {
return "你好:"+name;
}
}
发布:
package com.azj.service;
import javax.xml.ws.Endpoint;
public class Te {
public static void main(String[] args) {
Endpoint.publish("http://localhost:8080/fb", new orderSeiImpl());//访问地址自己可以随意谢,后面接接口实现类
System.out.println("发布成功!");
}
}
在游览器上输入访问http://localhost:8080/fb?wsdl 看是否生成xml文档。
第四步:客户端发送参数并接受数据:
通过接受的xml文档用cmd生成相关类进行调用:
打开本电脑的cmd小窗口,进入该项目类的src路径下:
Microsoft Windows [版本 10.0.14393]
(c) 2016 Microsoft Corporation。保留所有权利。
C:\Users\qwe>f:
F:\>cd F:\eclipse_e
4000
exm\webservice-spring\src
F:\eclipse_eexm\webservice-spring\src>wsdl2java -p com.azj.client http://localhost:8080/fb?wsdl
F:\eclipse_eexm\webservice-spring\src>
其中wsdl2java生成类命令,-p生成的包 后接发布的wsdl文档访问路径
第五步:调用服务端数据:
package com.azj.client;
public class Te {
public static void main(String[] args) {
OrderSeiImpl od=new OrderSeiImpl();//这里是接口的实现类,对于发布xml文档里的
//<wsdl:service name="orderSeiImpl">
//<wsdl:port binding="tns:orderSeiImplSoapBinding" name="orderSeiImplPort">
//<soap:address location="http://localhost:8080/fb"/>
//</wsdl:port>
// </wsdl:service>
OderSel proxy = od.getOrderSeiImplPort();//这里是生成的代理类,对于服务端的接口
String name = proxy.getName("azj");
System.out.println(name);
}
}
简单发布与接收就完成啦!
看看xml里面内容的文档讲解,对于理解开发,调用有帮助!
地址:http://blog.csdn.net/liguocai2005/article/details/4402350
相关文章推荐
- php的webservice的wsdl的XML无法显示问题的解决方法
- 在PHP中利用wsdl创建标准webservice的实现代码
- android调用web service(cxf)实例应用详解
- 在CXF中使用继承
- CXF+Spring+Maven+JBOSS7简单例子
- CXF 生成客户端报错 Two classes have the same XML type ...
- cxf spring mybiats
- Web Service的CXF实现(Spring整合方式)
- 新手初识webservice-理论篇
- 新手初识webservice-实践篇
- 如何用Dart调用RESTful Web Service
- Web Service 那点事儿(2)—— 使用 CXF 开发 SOAP 服务
- Web Service 那点事儿(4)—— 使用 CXF 开发 REST 服务
- CXF使用问题整理
- Aixs2开发Web service操作数据库demo
- Apache CXF REST example
- ubuntu下安装 gSOAP 用于C/C++开发web service服务端与客户端
- Linux下用gSOAP开发Web Service服务端和客户端程序(一)
- Linux下用gSOAP开发Web Service服务端和客户端程序(二)
- gSoap使用实例 - 发送WSDL文件