使用CXF框架搭建WebService服务接口
来源:互联网 发布:美国股票行情软件 编辑:程序博客网 时间:2024/05/12 01:00
我们在这篇文章已经介绍了jdk如何实现webservice接口:
http://blog.csdn.net/qq_18895659/article/details/51758546
CXF作为java领域主流的WebService实现框架,Java程序员有必要掌握它。
我们可以去CXF主页:http://cxf.apache.org/
下载相关jar包。
来自百度百科的简介:Apache CXF = Celtix + XFire,开始叫 Apache CeltiXfire,后来更名为 Apache CXF 了,以下简称为 CXF。CXF 继承了 Celtix 和 XFire 两大开源项目的精华,提供了对 JAX-WS 全面的支持,并且提供了多种 Binding 、DataBinding、Transport 以及各种 Format 的支持,并且可以根据实际项目的需要,采用代码优先(Code First)或者 WSDL 优先(WSDL First)来轻松地实现 Web Services 的发布和使用。Apache CXF已经是一个正式的Apache顶级项目。
今天的话,主要是用CXF来开发下WebService服务器端接口,下一篇写开发客户端接口;
注意:1.7有webservice的默认实现。不要用1.5 不然下面你用我的代码会有问题,用1.5的话,还需要另外加jar包。
首先我们先回顾一下用JDK实现服务接口的时候。
我们写一个接口类:
package cxf;import javax.jws.WebService; @WebServicepublic interface helloworld { public String say(String str);}然后写一个接口实现类
package cxf.imp;import javax.jws.WebService;import cxf.helloworld;@WebServicepublic class helloworldimp implements helloworld {public String say(String str) {return "陈洪杰第一个cxf"+str;}}
再写一个发布服务的主类:
package cxf.service;import javax.xml.ws.Endpoint;import cxf.helloworld;import cxf.imp.helloworldimp;public class service { public static void main(String[] args) { System.out.println("web service start"); helloworld implementor = new helloworldimp(); String address = "http://192.168.1.103:8080/hello"; Endpoint.publish(address, implementor); // JDK实现 System.out.println("服务已启动"); }}
我们运行这个类,然后在浏览器输入http://192.168.1.103:8080/hello?wsdl
接口和接口实现类都不用变,我们在发布服务的主类修改如下。
package cxf.service;import javax.xml.ws.Endpoint;import org.apache.cxf.jaxws.JaxWsServerFactoryBean;import cxf.helloworld;import cxf.imp.helloworldimp;public class service { public static void main(String[] args) { System.out.println("web service start"); helloworld implementor = new helloworldimp(); String address = "http://192.168.1.103:8081/hello"; // Endpoint.publish(address, implementor); // JDK实现 JaxWsServerFactoryBean factoryBean = new JaxWsServerFactoryBean(); factoryBean.setAddress(address); // 设置暴露地址 factoryBean.setServiceClass(helloworld.class); // 接口类 factoryBean.setServiceBean(implementor); // 设置实现类 factoryBean.create(); System.out.println("服务已启动"); }}运行服务类,然后在浏览器输入http://192.168.1.103:8080/hello?wsdl,我们可以看到结果和JDK实现的一样。
到此为止我们的CXF框架的服务接口就此完成了。
写得不好的地方请大神提出。
- 使用CXF框架搭建WebService服务接口
- 使用CXF和spring搭建webService服务
- 使用CXF框架学习搭建WebService(一)
- 使用CXF框架学习搭建WebService(二)
- 使用CXF框架学习搭建WebService(三)
- 使用CXF框架学习搭建WebService(四)
- OpenJWeb中使用cxf webservice搭建跨平台SOA框架
- webservice第三篇【接口开发webservice、CXF框架使用、IDEA下使用webservice、小例子】
- 使用cxf技术开发webService接口
- 使用cxf实现webService服务
- 使用Maven搭建CXF webservice
- 使用CXF框架发布webservice
- WebService之CXF框架使用
- CXF集成Spring提供Webservice接口服务
- 使用CXF框架,发布webservice服务,并使用客户端远程访问webservice
- maven+spring3+cxf 搭建webservice服务
- cxf框架webService接口服务端详细配置
- bbossgroups cxf Webservice服务管理框架
- 导致国产喷码机一块电路板与三块电路板原因
- Express 摘录 (1)
- LeetCode - 49. Group Anagrams
- 4种方法让SpringMVC接收多个对象 List<user> 表单提交,以BeanListModel接收
- Cordova自定义插件实战
- 使用CXF框架搭建WebService服务接口
- YV12,I420,YUV420P的区别
- Fragement 嵌套自定义View 导致onDraw方法运行两次
- ubuntu14.04 安装 WineQQ
- 使用coe_xfr_sql_profile
- C#中,Stream和Byte[]的转换
- Gradient Descent
- 使用nginx搭建前端项目web服务器以及利用反向代理调试远程后台接口
- 寒战2II 观后感