范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

webservice的学习

  webservice是什么?基于web的服务:服务器端整出一些资源让客户端应用访问(获取数据) 一个跨平台、跨语言的规范(抽象) 多个跨平台、跨平台的应用间通信整合的方案(实际)
  为什么要用webservicewebservice能解决跨平台调用 webservice能解决跨语言调用 webservice能解决远程调用
  什么时候用webservice同一家公司的新旧应用之间的通信(语言不同) 不同公司的应用之间(语言不同) 一些提供数据的内容就会应用:天气预报、股票行情等
  webservice的几个重要的术语wsdl:webservice definition language(webservice定义语言)
  对应一种类型的文件.wsdl
  定义了webservice的服务器端与客户端应用交互传递请求和响应数据的格式和方式
  一个webservice对应一个唯一的wsdl文档soap:simple object access protocol(简单对象访问协议)
  一种简单的、基于http和xml的协议,用于在web上交换结构化的数据
  soap消息:请求消息和响应消息
  http+xml片段SEI:webservice endpoint interface(webservice终端接口)
  webservice服务器端用来处理请求的接口cxf:celtix+xfire
  一个apache的用于开发webservice服务器端和客户端的框架
  用jdk开发webservice开发服务器端
  webservice编码:@WebService(SEI的实现类);@WebMethod(SEI中的所有方法)
  发布webservice
  Endpoint(终端发布webservice)
  示例代码**  * SEI接口  */ @WebService public interface WebSEI {      @WebMethod     public String sayHello(String name); }   /**  * SEI的实现类  */ @WebService public class WebSEIImpl implements WebSEI {     @Override     public String sayHello(String name) {         System.out.println("server say hello " + name);         return "Hello " + name;     } }  /**  * 发布webservice  */ public class WebEndpoint {     public static void main(String[] args) {         /**          * 参数说明:1.发布地址,2.接口实例          * 发布地址中IP是主机地址,其余可以自定义          */         Endpoint.publish("http://192.168.0.103:8087/myservie/hello", new WebSEIImpl());         System.out.println("发布成功!");     } }
  上面的main方法启动之后,可以在浏览器输入http://192.168.0.103:8087/myservie/hello?wsdl进行访问和查看wsdl文档。wsdl文档解析
  文件格式大概如下: 	 		 			                               	 		 			 			 	                    
  上面这段是定义webservice的wsdl文档中引入的约束,其中schemaLocation="http://192.168.0.103:8087/myservie/hello?xsd=1"/>是约束内容的地址,可以用浏览器进行访问查看,当然这需要一定schema约束相关的知识,可以事先了解下。              
  上面的是定义webservice所有的消息结构;
  标签通过element属性指定标签里schema中的约束中的片段。                             
  上面的标签是用来定义服务器端的SEI;
  标签用来指定一个webservice中的处理请求的方法;
  指定客户端应用传过来的数据,会引用上面定义的;
  指定服务器端返回给客户端的数据,会引用上面定义的;                                                                                   
  用于定义SEI的实现类,type属性引用上面的;
  用来定义方法与上面中的差不多,这里name属性是服务接口的方法名;
  表示传输数据格式是文档(xml);
  表示数据是文本数据;                    
  是代表一个webservice容器,name属性指定webservice客户端的容器类
  代表一个服务器端SEI的一个实现,bingding属性引用上面的标签,name属性是指定webservice客户端真正的所需要的服务类;
  代表当前webservice的请求地址开发客户端
  查看对应的wsdl文档(一般浏览器 ....?wsdl)
  请求webservice并查看请求和响应消息(一般浏览器)
  创建客户端应用编码方式访问
  借助jdk的wsimort.exe工具生成客户端代码:进入项目src目录下,打开cmd窗口,输入wsimport -keep url(url是wsdl文件的路径或者是wsdl文档)
  生成的代码类如下:
  借助生成的代码编写请求代码public class ClientTest {     public static void main(String[] args) {         WebSEIImplService factory = new WebSEIImplService();         WebSEIImpl webSEI = factory.getWebSEIImplPort();         System.out.println(webSEI.sayHello("jack"));     } }
  用cxf开发webservice用cxf比jdk的优势
  jdk不支持map与复杂的object类型,cxf支持所有类型
  cxf提供很多拦截器,后期业务拓展性高所需依赖:      org.apache.cxf     cxf-core     3.4.4       org.apache.cxf     cxf-rt-frontend-jaxws     3.4.4       org.apache.cxf     cxf-rt-transports-http-jetty     3.4.4  服务端代码示例:   JaxWsServerFactoryBean factoryBean = new JaxWsServerFactoryBean(); //暴露地址 factoryBean.setAddress("http://192.168.0.103:8087/myservie/hello"); //SEI接口 factoryBean.setServiceClass(WebSEI2.class); //SEI实现类 factoryBean.setServiceBean(new WebSEI2Impl()); factoryBean.create(); System.out.println("发布成功!");创建客户端应用编码方式访问
  首先可以在https://cxf.apache.org/download.html 下载cxf压缩包,并且配置环境变量;
  然后进入 项目src目录下,打开cmd窗口,输入wsdl2java url(url是wsdl文件的路径或者是wsdl文档)生成客户端所需要的代码
  或者maven的pom文件添加     org.apache.cxf     cxf-codegen-plugin     3.5.0                           generate-sources             generate-sources                              generated/cxf                                                               http://192.168.0.103:8087/myservie/hello?wsdl                                                                                 wsdl2java                            
  然后运行
  mvn clean generate-sources
  这将生成 wsdl 对应的客户端代码,代码会存放于 /generated/cxf 目录.
  又或者直接写客户端代码:{     JaxWsDynamicClientFactory clientFactory = JaxWsDynamicClientFactory.newInstance();      Client client = clientFactory.createClient("http://192.168.0.103:8087/myservie/hello?wsdl");      Object[] result = client.invoke("sayHappy", "KEVIN");      System.out.println(result[0]);   }
  所需依赖:     org.apache.cxf     cxf-core     3.4.4       org.apache.cxf     cxf-rt-frontend-jaxws     3.4.4       org.apache.cxf     cxf-rt-transports-http-jetty     3.4.4 

知名度不如三星,却成韩国主妇首选!这款双胆电压锅,卖出10万台这可能是大部分的人在选择购买压力锅的时候考虑的最多的一个问题了,影响选择的因素实在是太多了。价格寿命安全性性能表现智能化,其实都是现在应该考虑的问题,对于一款好的家用电器,以上五点变相官宣大名单?EDG夺冠庆典终于来了,Uzi也会参加吗?英雄联盟S11赛季可以说是最精彩的一届,毕竟这一届比赛创造了太多的奇迹,LCK赛区的强势,让很多人都不看好LPL,但是EDG不破不立,创造奇迹拿下冠军,令所有LOL的老粉丝们都泪流双城之战全球爆火,拳头却收不回本?制作烧6亿,宣传花了九千万作为英雄联盟这个游戏IP在影视领域的首次商业化尝试,双城之战的热播无疑为英雄联盟全新十年的发展开了一个好头。根据国外相关机构给出的数据来看,自从双城之战第一季第一集开播以来,这部动2021年PS大奖首批获奖名单公布,这八款游戏的确值得一玩索尼粉丝们关注的PlayStationPartnerAwards2021JapanAsia已经公布了首批获奖名单!其实今年的PS大奖包括了最为重要的大奖(GrandAward)伙伴31省份平均工资出炉北京平均年薪最高,上海青海涨薪最快伴随着前段时间,我国31个省市的GDP总量排名正式出炉之后,最近,31省份的平均排行榜也终于正式出炉了,在这份排行榜中我们可以看出,不愧是首都北京,在平均年薪上依然力压上海成为年薪英特尔助力永劫无间世界冠军赛,硬核开路,疾速江湖英特尔助力永劫无间世界冠军赛,第12代英特尔酷睿处理器采用intel7制程工艺,创新性能混合构架可有效地提升多线程性能助力玩家畅快游戏高效创作和轻松超频。引剑指荣光!代表永劫无间当热搜第一!孙杨要坚持到巴黎奥运会,最大难题污点禁入国家队今天孙杨成为了大家关注的焦点,他在昨天30周岁生日当天进行直播互动,线上开生日会的时候被问到了是否会继续坚持,孙杨明确表示自己会坚持到2024年巴黎奥运会。孙杨表示你们心里想的和我1930!联合国大会通过中方决议,宣布在北京冬奥会期间全球休战距离2022年北京冬奥会开幕仅剩下两个多月的时间,但一些与冬奥会有关的不利因素也在累积,试图使冬奥会政治化。对国际奥委会和主办方中国来说,最不利的影响就是在冬奥会期间发生战争,因为法媒67辆自动驾驶出租车在北京商业运营来源环球时报法国欧洲新闻电视台网站11月30日文章,原题一个由67辆无人驾驶的机器人出租车组成的车队开始在北京搭载付费乘客它看起来像一辆普通小汽车,但停靠在人行道旁的这种白色出租车北京清洁工娶一怪女子,6年后女子病死时坦白其实我是大清皇妃1953年9月18日,北京辟才胡同西口的一间民房内,一个年仅44岁的中年妇女走到了生命的尽头。房子的男主人是一个清洁工,他叫刘振东。6年前,刘振东与一家印刷厂的一名女工结婚,虽然两肝不好,怎么办?常按这几个穴位疏肝解郁少得病1点神庭穴镇静安神的神庭穴配肝俞肾俞,可补益肝肾滋阴明目。神庭穴在头部,当前发际正中直上0。5寸。闲暇的时候可以眼睛面向东方坐着,用中指点着神庭穴,闭着眼睛开始吸气呼气,不要揉,抖
加拿大旅游行业协会加拿大旅游实用手册随着国内疫情的结束,中国对外交流开始逐渐增多。随着夏季的临近,想来越来越多的国人会选择在暑期带着家人旅旅游,走一走比较大的城市。不知道会不会有赴加国旅游的朋友。今天为您推荐的是加拿广安邻水提档升级旅游景点带动旅游热起来春回大地,随着气温回暖,正是踏青出游的好时节。邻水县积极筹备,精心打造旅游打卡点,推出精品春季出游线路,迎接春季旅游旺季。近日,记者来到棕阁山生态度假区,在景区野生杜鹃生长区域,工制作移动版Windows把系统装到U盘或硬盘里,走到哪用到哪有没有这样一种场景有时候下班了,老板还叫你赶文件或找资料,但是你的文件资料又没带在身上,只能屁颤屁颤地跑到办公室加班?有人会说,那就用云盘同步文件资料啊。对于一般的办公文档表格之类国内厂商再次发力,DDR5内存白菜价,金百达刃高频内存表现如何?国内厂商再次发力,DDR5内存白菜价,金百达刃高频内存表现如何?DDR5内存的春天来了,这个自然得益于国内厂商的价格战。自从国内厂商可以自己生产内存和SSD硬盘后,这2类产品,几次华硕天选4系列游戏本酷睿版发布,7299元起今日,华硕正式发布天选4(15。6英寸)与天选4Plus(17。3英寸)酷睿版游戏本,新机全系升级RTX40系显卡,处理器可选12代与13代酷睿,售价7299元起。华硕天选44Pl为啥我不建议用机械盘?五大原因!目前哪几款固态硬盘值得入手?了解我的小伙伴们都知道,我一直都不建议大家用机械硬盘,不管是用来安装系统还是游戏,或者是存储数据。很多小伙伴可能会觉得,机械硬盘当仓储盘安全性更高一些,因为机械盘里面存上数据,多年2023EHA优秀HIFI音频大奖名单2023EHA优秀HIFI音频大奖名单一蓝牙耳机金奖森海塞尔MOMENTUM真无线3代拜雅FreeBYRD(费兰朵)银奖森海塞尔MOMENTUM4finalZE3000飞傲FW5米华为MateX3折叠屏手机曝光,2K内折无孔内屏,采用骁龙8处理器去年,华为折叠屏手机在国内折叠屏手机市场,占据了半壁江山。按照往年华为MateX系列折叠屏手机发布日期,华为MateX3即将发布,网上也是爆出了关于这款折叠屏手机的相关消息。来自数婴幼儿奶粉新国标,新在何处?2月22日,中国婴幼儿配方奶粉的新国标正式实施。包括适用于06个月龄婴儿的婴儿配方食品适用于612个月龄婴儿的较大婴儿配方食品,以及适用于1236个月龄幼儿的幼儿配方食品。新国标的为何双胎孕妇产检需缴纳双倍价格?产科主任医师回应长江日报大武汉客户端2月22日讯(记者樊友寒)别的孕妇做NT只需交300元检查费,我却要缴纳近600元。近日,怀有双胞胎的刘女士发现自己在医院做产检时,除抽血类检查项目以外,其余检小米平板5限时降价200元IT之家2月20日消息,据小米官方宣布,小米平板5设备迎来了降价优惠活动,2月22日2月28日,限时降价200元,原价1999元起,现价1799元(IT之家注6GB128GB版本)