客户端学习总结

时间:2019-05-13 18:02:03下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《客户端学习总结》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《客户端学习总结》。

第一篇:客户端学习总结

前面几个星期,我们学习了客户端的知识,其中主要有3个部分:xhtml,css,js。通过学习,我对客户端网页编程有了一个初步的了解,xhtml主要是页面内容的一个体现,是静态网页设计的基础,css用来控制页面的布局和网页的表现形式,javascript用于动态控制网页,以及对表单收集的数据进行客户端的验证。

xhtml和css是基础,这部分的内容不多也比较简单,学起来也比较轻松,主要是把其中概念要理解,而我们在实际编写网页时可以借助帮助手册,而且我们以后可能不会直接从事这方面的工作,所以现在只需要把基本的概念理解了就行了,以后在工作中能看懂代码就行。

javascript是我们客户端学习的重点,因为它也是一门编程语言,通过对它的学习,我们能掌握一些程序设计的技巧和思维。更为重要的是,它是一门面向对象的程序设计语言,它可以为我们以后学习java打下一个比较好的基础。我们以前学过的c语言是一种面向过程的语言,通过它的学习,我们对程序设计的一些思维有了初步的了解,知道了3种流程控制,而对javascript的学习,我们了解到了面向对象的一些基础知识,对象的概念等。

javascript也是我们这段时间学习的一个难点,由于以前没有面向对象程序设计的经验,这部分刚开始学的时候学得不是很好,要背的知识点太多,一部分知识要我们学习了java后重新回来才完全理解,有很多新的英语单词需要记。幸好李老师给了我们一个中文手册,有时候记不住的地方可以查手册,提高了我们学习的效率。对这部分的学习,感觉要从总体上来把握学习的知识点,不要抓住细节不放,如果能够将自己的思维提高到一个新的高度再回过头来看细节就比较轻松了。

javascript是一种弱类型的语言,它的特点是一个变量可以被赋值为多种类型的数据,我们在声明变量的时候不用声明它的类型,因为我们并不关心它的具体类型,这也是为什么在javascript中没有类这个概念的原因。类本身是一种复合的数据类型,对象才是具体的变量,在javascript中,任何一个变量可以被赋予任何类型的数据,我们对变量的类型并不关心,因此也没有类的概念。

消防支队开展先进性教育集中学习总结

党员先进性教育活动学习小结

科学发展观活动学习调研阶段总结

在javascript的后面几章,我们着重学习了对象模型,重点是标准文档对象模型dom和传统对象模型,以及浏览器对象模型,这部分的内容,主要是要记得多,知道每个对象都有什么属性和方法,最后我们总结了表单的验证,只要前面的内容都弄懂了,这部分学习起来就没有问题。

通过这2个多星期的学习,我对客户端网页编程有了一定的了解,已经进入java的学习了,这才是我们学习的重点,要更加的努力才行。

第二篇:手机银行客户端测试总结

手机银行测评总结

一、功能总结

通过对十三家手机银行的功能试用和对比,可以将目前手机银行的功能大致分为以下四类与账户服务、金融产品及其服务、生活服务、其他业务。以下是多家银行的手机界面:

账户服务:

这部分的服务是银行最基本的服务,所以各家银行在功能上没有太大差别。一般分为账户管理、转账汇款、无卡取现、信用卡这四部分。除了无卡取现这一相对比较新鲜的业务外,其他的功能可以用应有尽有来描述。细化的功能就不再赘述,可以参考各家银行手机测评报告中的功能地图。金融产品及其服务:

金融产品及其服务目前主要提供的业务有:基金业务、外汇业务、理财业务、贵金属业务、国债业务、保险业务、银期业务、银证业务、个人贷款、结售汇、手机股市、大智慧;以及个别银行针对自己的特色产品提供的相关服务,如工行的账户原油、高尔夫,交行的双利理财、薪金宝等。生活服务:

生活服务方面目前提供的主要业务有:生活缴费(水费、电费、燃气费、通信费、取暖费、有线电视费、小区物业费、彩票站点缴费)、手机充值、游戏点卡充值、电影票、彩票、飞机票、演出票、酒店预订、公益捐款、银医服务、代驾服务、交通罚款、优惠商户、商城购物等。其他业务:

除上述业务外,还有诸如理财计算器、网点查询、排号预约、业务指南、优惠活动、银行资讯、自助注册、客户服务等辅助业务。

以上基本是目前我国手机银行业提供的所有功能和业务,每家手机银行并不是都具有了上面所说的全部,除了账户服务和其他业务相差较小外,其他两个服务因为每家银行的侧重点不一样,在各个银行间还是具有较大差异。做的较好较全面的,要数工行、建行、招行、交行、民生等银行。做的最差的当属中国银行,功能稀少、操作不便、界面粗糙等等,各方面都排在了众多银行的后面,实在是有辱其大行之名。

二、特色分析

对比各家银行,目前手机银行所具有的特色主要体现在转账支付手段的创新以及营销手段的创新等方面。转账支付创新: 在银行传统转账操作的基础上,各家银行充分发挥自己的创作能力。提供了摇一摇转账、手机号转账、二维码转账、手机无卡取现等多种新颖别致,颇具个性化的功能。并且由于支付实质上也是归结为一种转账,将以上各服务运用在消费支付上,就形成了一种新的支付手段。这方面做的比较好的有建行、平安、民生等。

以下就是建行摇一摇功能,除了进行转账功能外,还可以进行个性化设置,实现账户余额、外汇买卖、账户贵金属、网点的快速查询。

以下是建行“一拍享购”的二维码功能,通过建行手机银行客户端拍摄二维码,可以轻松享受一拍理财、购物等时尚生活体验。

营销手段创新:

在营销手段方面,各家银行互相发挥自己的优势和才智,除了借鉴已经成功的互联网电子商业模式外,还结合手机银行自身的特性,推出了不少新的服务。这其中比较有特色的是招行、交行和建行。

1、在其他手机银行的优惠商户里面一般只有衣食住行方面的普通优惠商户,这些商户的特点就是单次消费低,客户需求大优惠方式以折扣为主;招行另辟蹊径,提供了针对医疗、教育、家电、汽车、通讯等昂贵产品和服务的分期商户,迎合了市场,满足了人们的不同需求。以下是招行优惠商户和分期商户的界面:

2、另外一个比较具有特色的就是交行的“最红星期五”和建行的“建行e路惠,最炫星期天”。他们都选取了周末这个平日消费相对集中的时间段进行一种折上折的促销,或者是开展本行的一些优惠活动,这样活动必将会引发客户的争相参与,引起一波消费热潮。长期使用他们手机客户端的人,很容易由于这种活动而对他们的手机客户端产生习惯和依赖。以下是相关界面:

3、除此之外,还有一个不得不提的就是民生银行,其跨行账户管理功能十分强大。在其余手机银行里面,一般只能对本行账户进行管理,而在民生手机银行里面,只要进行了签约,就可以对他行账户进行余额查询操作,为多卡用户提供了极大的方便。并且民生银行将年初炒的比较热的“超级网银”,即跨行资金归集业务也移植到了手机上,如果用户办理了相关业务,并合理运用。只用一个手机,不同银行多个账户之间的资金真是想怎么转就怎么转,将手机银行的优势发挥到了极致。由于这些业务只有需要多张银行卡,且办理了相关业务资费才能显示,过程较为繁琐,相关页面就不再列出了。下面是民生银行的转账汇款业务,其中的“同名汇款”在其他银行较为少见,列出来算是一种补充。

4、其他如排号预约、理财计算器、交行的语音服务、火车票查询;招行的“e代驾”、《财经内参》和《财智生活》;工行的业务指南等功能也颇具特色。以下是一些相关界面:

建行转账汇款的界面:

工行的理财计算器:

工行的业务指南:

招行的“e代驾”、《财经内参》和《财智生活》:

类似的功能很多家银行都有,每家银行也都有自己的一项或数项特色功能,在此就不一一列举了。其实特色功能不一定代表实用,看起来很实用的功能,也不不一定代表用的人就很多。具体情况如何,也只能待若干年后,我国手机银行稳定和壮大,方能见分晓。

三、总结

由于我国手机银行客户端还处于起步的阶段,能熟练使用的人还不是很多,许多人对这一新鲜事物还不了解,有的了解却对它的业务只是停留在像网银一样的账户管理、投资理财、代缴费等传统业务上面,甚至对它的安全性还抱怀疑态度。

目前,各大银行都处于一种剑拔弩张的态势。随着移动互联网大潮的到来,移动支付是一种必然的趋势。手机银行客户端作为其中的媒介,谁的客户端占领了用户的手机,谁就占领了市场。所以客户端的界面好坏,操作是否方便快捷,功能是否齐全,安全性能如何,是否具有特色服务等等都会在用户做出选择时起到十分重要的作用。当然,银行的宣传力度对于手机银行市场占有率的提升也是至关重要的,尤其是在现在这种起步阶段。

上面以几家银行为例,列举了一些特色业务,其实这些业务并非他们所独有,甚至也不是他们所首创。比如“摇一摇”转账,百度里面搜到的最先推出这种服务的是中信银行,现在建行、平安等也推出了同样的业务,并且建行活学活用,还将“摇一摇”用到了其他功能上,显得比中信更胜一筹。其他如二维码转账支付、手机号转账、无卡取款、排号预约等特色服务,目前虽然并不是每家银行都有,但确实是处于逐渐添加和完善的状态。比如工行10月23号更新的客户端里面添加了二维码购物等多项功能。究其原因,我们可以归结为目前我国的手机银行市场还不太成熟和稳定,但市场空间又无比广阔,银行间竞争激烈,都希望先人一步,占据尽可能多的市场份额。即使在某项功能尚不成熟,市场前景未知的情况下,也去盲目跟风推出,寄希望于增加功能来吸引用户。然而一个APP的功能容量是有限的,以往多家银行都缺乏产品策略规划,估计就在今年,功能增加将走向尽头。银行必须考虑重新建立产品策略和产品形态。

银行业务复杂,产品众多,用户面也非常广泛,仅靠一个APP承载这么多使得产品臃肿而市场响应迟钝。银行应该学习新浪、腾讯、阿里巴巴这类企业,根据业务特点做垂直应用。同时,手机银行产品雷同问题严重,而独立APP产品线是差异化的出路。目前,招行除了手机银行还有掌上生活APP,交行新推出了校园版APP;估计其他银行也会陆续跟进,女性手机银行、理财专用APP、黄金买卖APP、青少年用户版本APP等各种细分产品将形成银行APP产品线。

得益于智能手机的普及,以及各商业银行的重视以及宣传,手机银行的用户数正在直线上升,交易额也呈现出一种爆发式增长的态势,将来极有可能发展到与网上银行体积相当的程度。专家预计,移动支付和移动金融,将是手机银行的主要增长点。

注:

1、以上图片有看不清的,可以放大word文档的倍数进行查看!

2、本文档数个人原创,仅限学习交流,严禁下载后到其他网站四处上传,做人要厚道!

第三篇:Android客户端性能测试总结

Android客户端性能软件测试小结

发布时间: 2012-3-09 13:52 作者: xiaowan 来源: TaoBao QA Team 字体: 小 中 大 |上一篇下一篇 |打印 |我要投稿 |推荐标签:性能测试软件测试

Android手机客户端的性能测试开展近3个月了,期间包括性能监测工具的开发周期和工具的投入使用和优化;客户端性能测试从这里起步,从这里开始。

一般情况,对于新生的产品,都会用定势的思维考虑:优先功能测试,之后才会是安全、性能等方面。android客户端从诞生到现在,在测试上走的也是这样的路线。随着客户端功能越来越完善、越来越繁大,用户群越来越多,性能、响应、稳定等被正式提上议程,重点考虑关注。

为什么我们要从以上几个点来考虑客户端性能呢? 针对上面的几个点我们是如何开展监控测试的?如何来评估一个客户端的性能好不好,是否给予通过?下面就我自己看法跟大家详细交流。

有数据统计:有很大一部分人群喜欢睡觉前、公交车、厕所、或者会议中开小差中使用手机;在看下移动互联网的发展趋势【下图摘自某次互联网统计报告】:

在上图为各大运营商所占移动市场份额的变化情况:整体上移动用户数仍绝对领先,但其市场份额也明显的下降趋势,百度推断导致此变化的原因是基础网络的性能已经开始影响移动互联网应用的使用,即网络到底好不好,速度到底快不快,已经开始在影响应用市场份额了。同样,对用户而言:特定网络下客户端流畅不流畅、响应快不快决定着用户对客户端的使用时长和粘度;此外,用户在考虑速度的同时,还会考虑跟自身利益相关的—-金额&网络流量的消耗。

一个成熟的场景包括:人、时间、地点、行为。换言之:什么特征的人在什么情况下会使用比较容易比较经常使用客户端,他们又经常使用客户端的哪些面呢?

在客户端性能监测前,我们需要采集真实场景中的性能数据:2G的网络下的时间指标、访问量较多页面的流量消耗情况、整个客户端的稳定情况。

(1)稳定性测试:【不同网络、不同软硬件系统下】

客户端可稳定运行的时间、以及长时间操作后的流量消耗和内存消耗;

(2)性能测试指标:【不同网络下】

界面流畅性、界面切换时间、占用的内存数、服务器返回数据消耗流量大小及数据的返回时间;

对以上的点,有几种方法可以采用来监测。现在我们使用的是自己开发的客户端性能工具。其中:流量统计使用TrafficStats.getUidRxBytes()来获取下行流量值;响应时间通过判断activity的状态和日志中记录的时间戳来获取响应时间段; 内存通过解析dumpsys命令返回内容,截取我们需要的值进行分析;电量统计android系统提供查看。除了自己研发的小工具之外,外界也提供很多工具,都可以帮助我们完成相关的性能监测。

对用户而言,性能不等于响应。坚持客户第一,通过我们一个测试环节来保证用户手中的每个客户端都用的畅快。

第四篇:PB11.5+WEB客户端编程技巧总结

PB11.5 WEB客户端编程技巧总结

一、概述

用PB11.5把现有C/S程序转换成WEB应用程序后,保留了大部分C/S环境下的代码,并且大部分都能执行过去。但是在BS平台下,原来的PB代码从客户端转成了IIS上的服务代码,原的“客户端”就成了浏览器,转换后的客户端编程其实就是面向浏览器的编程。

根据目前我对PB11.5所了解的情况,PB11在代码方面可以使用条件编译方式嵌入.NET代码,其实我感觉.net里能实现的内容,用PB代码也基本能实现,.net里不能实现的,PB也可实现(如datawindow),但这些都属于服务端的编程范畴,实际应用中很少会碰到在PB里再嵌入.net代码的,除非要写一些很特殊的代码,所以,可以说,服务端方面仅用PB代码就可以彻底解决。

但实际上,这种纯PB代码的程序一发布成WEB后,会存在不少问题,在C/S环境下,要完成一个操作往往需要多个交互过程,如“打开窗口、选择行、输入数据、返回、刷新页面”这么一个过程,转成B/S后,运行是这样的“打开窗口(POSTBACK)、选择行(POSTBACK)、输入数据(回车后POSTBACK)、返回(POSTBACK)”,那么多的POSTBACK使得操作变得很笨重,就连简单的一个MESSAGEBOX,都要2次POSTBACK:“打开消息窗(POSTBACK)、点确定(POSTBACK)”。因此,使用PB11开发WEB程序将要面临一个很严峻的问题:如何提高客户端的性能,减少POSTBACK次数。

值得庆幸的是,PB11.5的WEB页面使用了AJAX技术,POSTBACK并不会产生整个页面的提交,而是部分提交。另外,PB11.5还提供了不少客户端的编程接口,可以通过这些编程接口进一步优化页面。那么,有哪些地方可以运用javascript和html代码优化页面呢?

1、数据窗口对象appendedhtml属性。

刚接触PB11.5的WEB开发的时候,一定会被他的那么多unsupport属性所蒙蔽,原先在C/S下绚丽多彩的界面,转成B/S后变得暗淡无光,因此也就失去了进一步开发的乐趣。其实不然,PB提供了appendedhtml的属性后,使WEB界面编程变得更为灵活,一个小小的appendedhtml,可以将DHTML、javascript等所有页面技术嵌入到里面去。可以实现的效果如:透明、垂直居中、渐变、鼠标移动特效等等。

查看发布成WEB后的页面代码,会发现,appendedhtml里的内容是放在

里,也就是说,数据窗口的内容转成了WEB元素,如标签转成了
,列就是。Appendedhtml的写法:引号必须使用转义符~如:modify(‘sfz.html.appendedhtml = “style = ~~”padding-top:2px;~~“’),至于如何设置元素属性,可以查看《DHTML手册》。

2、数据窗口事件。此方法是在数据窗口对象初始化的时候写入对应的脚本,如: #IF DEFINED PBWEBFORM THEN dw_1.JavaScriptFile = ”uo_dw.js“ dw_1.OnClientItemChanged = ”MyItemChanged“ #END IF 另外,在发布成WEB的时候,必须嵌入已写好的javascript脚本,这些被脚本会在页面的head区被包含进去。

经过上面代码一处理,数据窗口的事件被触发后就会直接跳到javascript脚本去处理而不执行回调(就是PB里写的程序不会被执行)。

那么,哪些事件支持脚本编程呢?根据PB11.5文档所提供的技术说明,目前仅限于数据窗口内事件处理,包括clicked、DoubleClicked、RButtonDown、ButtonClicked、ButtonClicking、ItemFocusChanged、ItemError、ItemChanged、RowFocusChanged。在指定客户端事件脚本的时候,事件前都必须加”OnClient”。

二、客户端程序的优化思路

借助javascript脚本技术,我们可以对目前程序上的几个操作瓶颈进行优化。

1、数据窗口的条件性POSTBACK。

如果不对datawindow进行脚本处理,那么如果事件内有代码,则将会在触发该事件的时候执行POSTBACK,这样会有很多没必要的POSTBACK。如,在itemchanged事件里写入了对身份证输入后进行检查的代码,在IE下运行的情况是,该数据窗口的任何列输入完后都会执行POSTBACK,有没有办法实现只输入身份证的时候才POSTBACK呢?可以通过以下方法:

(1)在窗口的open事件里写入脚本。#IF DEFINED PBWEBFORM THEN dw_1.JavaScriptFile = ”uo_dw.js“ dw_1.OnClientItemChanged = ”MyItemChanged“ #END IF(2)脚本里写入条件回调程序。

function MyItemChanged(sender, rowNumber, columnName,newValue){if(columnName== ‘sfz’){return PBDataWindow_ItemChangedReject(sender, rowNumber, columnName, newValue);} Else {//do nothing} } 其中,PBDataWindow_ItemChangedReject为调用数据窗口的itemchanged事件,数据窗口提供的回调函数,可以在PBDataWindow.js找到,查阅PB帮助文档可以查看其具体用法。

2、PB代码向javascript脚本转化。

首先,必须理解PB-WEB程序的运行模式,见下图: 数据库 SQL 数据集 EASERVER 代理对象 IIS PBVM request IE 代理对象 response 从上图可以看出,IE与数据库之间其实就是数据请求的关系,我们可以认为,除了需要从服务端下载数据和页面加载的请求外,其他都是没必要的请求。这些没必要的请求包括:

1)messagebox。消息提示可以说是UI界面交互的最重要的环节之一,几乎所有业务操作都会涉及,很遗憾的是,除了数据窗口事件里的javascript支持本地消息提示外,目前还没有一种办法可以脱离IIS,直接在PB代码里调用IE消息提示的方法。2)简单的数据检查。如登录时的验证码、输入格式校验、身份证合法性检查等,可以直接在javascript里处理。

3)辅助性的数据输入。包括下拉数据窗口、下拉日历等。在传统的C/S模式下,直接打开一个窗口就可以实现下拉数据选择功能,但是这种方法在WEB下已经行不通,频繁的POSTBACK会使操作变得笨重、缓慢,甚至比直接输入来的慢。但是有些下拉的数据又需要从服务端取,这样可以将下拉窗口设计成共用模块启动时直接装载到页面,在需要调用的地方用javascript代码显示出来,然后象服务端请求数据,选择数据后返回、设置数据、隐藏下拉窗口,这一过程只要一个POSTBACK,即数据请求过程。

4)页面切换。在IE下打开多个业务窗口,这些窗口都已经装载到了IE下,可以通过javascript脚本实现页面显示、隐藏,以提高响应速度。

5)窗口、对象的关闭、销毁。类似此操作,可以直接在IE下完成,无需要再送到IIS上处理。

6)实现回车后焦点切换。打开PB安装文件所在路径,打开F:Program FilesSybasePowerBuilder 11.5DotNETwebrootscripts目录下的dwcommon.js,并修改其代码段。函数为:HTDW_inputKeyDown()代码if(event.keyCode == 9 &&!event.ctrlKey &&!event.altKey &&!event.shiftKey)ProcessTab(obj);修改为if((event.keyCode == 9 || event.keyCode == 13)&&!event.ctrlKey &&!event.altKey &&!event.shiftKey)ProcessTab(obj);实现按回车键的tab效果。

三、PB与javascript混合编程技巧

1、使用PB提供的javascript函数

打开IIS目录,在发布好的站点文件夹下,有个scripts文件夹,存放的是所有PB的内置函数,这些函数描述了客户端的调用、回调方法,具体使用方法在PB文档里有做了描述。

数据窗口对象(大部分数据窗口函数接口里都用sender做为参数)可以引用的函数可以在dwcommon.js里的function HTDW_DataWindowClass(name)里找到,如下图:

如:this.SetItem = HTDW_SetItem;这行表示,可以调用数据窗口的SetItem()函数进行设置数据窗口值,至于SetItem参数,可以查找HTDW_SetItem函数的参数结构。如下图:

调用举例:

数据窗口的回调函数,可以在PBDataWindow.js里找到,上面已经举过例子,这里不做描述了。

2、灵活地操控WEB元素

WEB页面上,每个元素都有一个ID值,是唯一标识该元素的键值。如表示“确定”按钮的ID为ID_OK。

要在javascript里编写程序实现与页面元素交互,最重要的一点是要弄清楚从PB转换成页面后的元素的ID值,这些ID值是IIS发送过来的,与PB里的对象名有一定的对应关系。目前PB技术文档没有这方面的说明,但我们可以通过多种途径来获得这些元素ID。1)利用event对象获得窗口事件的源、父对象

如,可以定义var o = window.event.srcElement;获取鼠标在窗口上点击的对象,通过o.parentElement可以获取该对象的父对象。

2)通过getElementByName、getElementById、getElementsByTagName等方法获取对象ID。

3)通过alert消息提示将对象ID显示出来。

有了这些ID,接下去如何操控界面元素,就和C/S编程差不多了,有关函数操作、属性操作等可以参考javascript和DHTML相关资料。

应用举例:

第五篇:WebService客户端代码生成方式总结

一、Webservice可以使用的框架很多。AXIS、CXF、JAX、XFIRE,这些框架都可以根据wsdl文件生成ws的服务器和客户端代码。

二、Ws的调用方式有三种,http post、http get、soap post。本人建议使用http post,他访问远程ws接口的速度比使用soap post要快些。象使用axis框架实现soap post方式来说,简单的接口还好,对于使用了大量代理类及带有soaphead的ws,且还要在本地生成一大堆JAVA类来和服务端对应。特别如下这种情况,axis好像无法实现。Soaphead如下 0039434454

67677 象这种只能根据org.apache.axis.client.Call.addHead(ElementSoapHead)来增加报头。但这个报头没有根元素,无法创建一个这种Element。

下面就如何书写客户端代码详细讲解下。1.通过发送http post请求来调用ws。

SOAPUI是个不错的工具,他可以根据wsdl文件生成测试例子。另外重要的是,它可以生成wsdl对应的请求报文和响应报文。这样我们在调用别人写的ws时,不管多复杂的ws都可以简单的调用。首先按照SOAPUI显示的请求报文格式拼装我们的请求报文,使用java.net.HttpURLConnection对象来发送http post请求。然后使用输出流、输出流获得响应报文,再用Element解析报文得到要取的数据。示例代码如下: JAVA类SoapInvoke: package test;

import java.io.InputStream;import java.io.OutputStream;import java.net.HttpURLConnection;import java.net.URL;

public class SoapInvoke {

public static void main(String[] args){

} try {

} soapSpecialConnection();e.printStackTrace();} catch(Exception e){ public static void soapSpecialConnection()throws Exception {

//拼装soap请求报文

StringBuilder sb = new StringBuilder();StringBuilder soapHeader = new StringBuilder();soapHeader.append(“”);soapHeader.append(“”);soapHeader.append(“zhouyun”);soapHeader.append(“123”);soapHeader.append(“”);soapHeader.append(“”);soapHeader.append(“”);soapHeader.append(“”);soapHeader.append(“zhouyun”);soapHeader.append(“”);soapHeader.append(“”);soapHeader.append(“”);soapHeader.append(“”);

//设置soap请求报文的相关属性

String url=“http://localhost:8080/CXFServer/SayHelloService”;URL u = new URL(url);HttpURLConnection conn =(HttpURLConnection)u.openConnection();conn.setDoInput(true);conn.setDoOutput(true);conn.setUseCaches(false);conn.setDefaultUseCaches(false);conn.setRequestProperty(“Host”, “localhost:8080”);conn.setRequestProperty(“Content-Type”, “text/xml;charset=utf-8”);conn.setRequestProperty(“Content-Length”, String.valueOf(soapHeader.length()));conn.setRequestProperty(“SOAPAction”, “");conn.setRequestMethod(”POST“);//定义输出流

OutputStream output = conn.getOutputStream();if(null!= soapHeader){ byte[] b = soapHeader.toString().getBytes(”utf-8“);//发送soap请求报文

output.write(b, 0, b.length);} output.flush();output.close();//定义输入流,获取soap响应报文

InputStream input = conn.getInputStream();int c =-1;//sb为返回的soap响应报文字符串

while(-1!=(c = input.read())){ sb.append((char)c);} input.close();}

} 2.通过axis来调用ws。

对于使用了复杂代理类的ws,我们在调用时可以使用AXIS、CXF、xfire架包来自动生成ws客户端JAVA代码。下面以axis为例,来展示。服务器端主要JAVA代码 package test;

import javax.jws.WebService;

@WebService public class SayHelloImpl implements SayHelloService {

public wsResult sayHelloMr(String name){

wsResult retObj = new wsResult();

retObj.setResultVal(”Hello,mr “ + name);

return retObj;

}

public wsResult sayHelloMiss(InputClass input){

wsResult retObj = new wsResult();

retObj.setResultVal(”Hello,Miss “ + input.getName());

return retObj;

} } 客户端:

1)新建wsdltojava.bat文件,放到C盘,文件内容如下: set Axis_Lib=E:axis-bin-1_4axis-1_4lib set Java_Cmd=java-Djava.ext.dirs=%Axis_Lib% set Axis_Servlet=http://localhost:8080/CXFServer/SayHelloService?wsdl %Java_Cmd% org.apache.axis.wsdl.WSDL2Java-u %Axis_Servlet% 其中Axis_Lib为本地axis架包的路径;Axis_Servlet为本地ws的URL,这里也可以设置为此ws服务器对应的wsdl文件的路径。

2)在DOS里,执行wsdltojava.bat。在C盘根目录下就会生成JAVA客户端的代码了 3)新建一个java类Invoke,代码如下:

package test;

public class invoke {

} }

SayHelloService stub = svc.getSayHelloImplPort();//调用

//WsResult wsResult = stub.sayHelloMr(”zhouyun“);InputClass inputClass=new InputClass();inputClass.setName(”zhouyun“);WsResult wsResult = stub.sayHelloMiss(inputClass);System.out.println(”结果是:" + wsResult.getResultVal());public static void getResult(){ try { SayHelloImplServiceLocator svc = new } public static void main(String[] args)throws Exception { getResult();SayHelloImplServiceLocator();} catch(Exception e){ } System.out.println(e);Ps: 1.通过命令生成的java客户端代码里SayHelloImplServiceLocator类是调用ws的入口。

2.执行此类,Myelipse控制台会输出Hello,Miss zhouyun,代表调用成功。

3.象JAX、xfire架包生成的客户端代码不能实现代理类输入、输出,只可以实现简单数据类型输入、输出,象String、Map、AaaryList等等。只有axis可以实现代理类的输入、输出。

下载客户端学习总结word格式文档
下载客户端学习总结.doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    个人网银-客户端

    中国银行电子银行岗位资格认证考试试题库 个人网银-客户端 一、不定项选择题 1. 我行网银BOCNET个人理财版客户,通过( B )开通网上支付功能。 A. 前往柜台开通 B. 在线自助开通......

    客户端连接不上服务器总结(shqb)

    客户端连接不上服务器 概述:大体分为下面三类原因: 一、网络问题 二、安全问题 三、数据库配置问题 魏老师补充: 网络版、单机版 单独一个客户端出现问题,则说明服务器正常。 该......

    中国联通新版客户端软件下载方案

    中国联通新版客户端软件下载方案(河南) 新联通的宽带用户(原来是中国网通的宽带用户),上网总需要使用中国联通新版客户端来拨号上网。如果你重装了系统之后,而恰巧没有备份的“中......

    游戏客户端安装协议

    游戏客户端安装协议欢迎您使用本公司提供的游戏客户端软件产品(在本协议中简称为“本软件产品”),为了保障您的权益,请您在继续使用本软件产品前,详细阅读本协议所有内容。本协议......

    客户端平台游戏介绍

    客户端平台游戏介绍 本文由扬速科技提供 一、游戏类型 现今的游戏大厅一般把游戏类型主要分为六大类:休闲竞技类、牌类游戏、棋类游戏、手机游戏和网络游戏。牌类游戏和棋类......

    CPC客户端操作常见问题

    问:使用电子申请系统客户端对计算机软件和硬件有哪些要求? 答:电子申请客户端系统推荐安装环境是Windows XP操作系统Professional版本、IE 7浏览器及Microsoft Office 2003版本......

    大型客户端网络游戏概况

    一、 大型客户端网络游戏概况 1. 网络游戏行业搜索指数 2011年大型客户端网游行业全年搜索指数接近55亿,较去年上升10% 2011年大型客户端网游行业的网民搜索关注度在Q1经历下......

    手机客户端应用口号

    手机客户端应用口号 手机客户端应用口号1 1、吃,喝,玩,乐享其城。2、乐享其城,诚享其乐。3、随心所欲,乐享其城。4、其乐悠悠,畅享贵城。5、倾城尽享,便捷生活。6、玩转生活,乐你所......