700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > CXF做的webservice简单例子

CXF做的webservice简单例子

时间:2019-08-12 12:03:54

相关推荐

CXF做的webservice简单例子

CXF介绍:/view/2742297.htm

CXF下载:/download.html

1:建一个接口 HotTopic

package cn.jsprun.ws;import java.util.List;import java.util.Map;import javax.jws.WebService;@WebServicepublic interface HotTopic {String getHotTopicTop10();}

2:实现接口 HotTopicImpl

View Code

package cn.jsprun.ws;import java.util.HashMap;import java.util.List;import java.util.Map;import javax.jws.WebService;import org.codehaus.jettison.json.JSONArray;import org.codehaus.jettison.json.JSONObject;import org.hibernate.Query;import org.hibernate.Session;import org.hibernate.Transaction;import cn.jsprun.domain.Advertisements;import cn.jsprun.service.DataBaseService;import cn.jsprun.utils.BeanFactory;import cn.jsprun.utils.HibernateUtil;import cn.jsprun.utils.JspRunConfig;@WebServicepublic class HotTopicImpl implements HotTopic{@Overridepublic String getHotTopicTop10() {DataBaseService dataBaseService = (DataBaseService) BeanFactory.getBean("dataBaseService");List<Map<String,String>> forums = dataBaseService.executeQuery("SELECT concat('viewthread.jsp?tid=',t.tid,'&extra=page%3D1') as url,t.* FROM jrun_threads t WHERE t.displayorder IN (0, 1, 2, 3) ORDER BY t.displayorder DESC, t.lastpost DESC LIMIT 0,10");JSONArray jsonArray = new JSONArray(forums); return jsonArray.toString();}}

3:创建服务端 TestServer

View Code

package cn.jsprun.ws;import javax.xml.ws.Endpoint;public class TestServer {public static void main(String[] args) {System.out.println("web service start");HotTopicImpl implementor = new HotTopicImpl();String address = "http://localhost:8080/helloWorld";Endpoint.publish(address, implementor);System.out.println("web service started");}}

运行TestServer,浏览器中输入:http://localhost:8080/helloWorld?wsdl,显示xml数据,则创建成功!

4:创建客户端 TestClient

View Code

package cn.jsprun.ws;import java.util.ArrayList;import java.util.List;import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;public class TestClient {public static void main(String[] args) {JaxWsProxyFactoryBean svr = new JaxWsProxyFactoryBean();svr.setServiceClass(HotTopic.class);svr.setAddress("http://localhost:8080/jsprunutf8/service/hotTopic.do");HotTopic hw = (HotTopic) svr.create();System.out.println(hw.getHotTopicTop10());}}

运行TestClient就能调用webservice了。

jar包导入:是下载来的cxf的lib文件夹中,把里面的jar都导入项目就能运行

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。