当前位置: 首页 > news >正文

webservice学习记录笔记(一)

一、先理解什么是服务

     现在的应用程序变得越来越复杂,甚至只靠单一的应用程序无法完成全部的工作。更别说只使用一种语言了。
    写应用程序查询数据库时,并没有考虑过为什么可以将查询结果返回给上层的应用程序,甚至认为,这就是数据库应该做的,其实不然,这是数据库通过TCP/IP协议与另一个应用程序进行交流的结果,而上层是什么样的应用程序,是用什么语言,数据库本身并不知道,它只知道接收到了一份协议,这就是SQL92查询标准协议。
     目前的云计算、云查杀都是一种服务,现在比较流行的说法是SOA(面向服务的框架)。
   既然数据库可以依据某些标准对外部其他应用程序提供服务、而且不关心对方使用什么语言,那我们为什么就不能实现跨平台、跨语言的服务呢?
      只要我们用Java写的代码,可以被任意的语言所调用,我们就实现了跨平台,跨语言的服务

 

二、什么是WebService?
  简说:如果说Java是跨平台的语言,那么WebService就是跨语言的技术。
WebService可以让多个进程之间实现数据交换,即进程间通讯
无论某个进程运行要互联网的任何地点,无论进程是有什么语言写成的,都可以互相访问并传输数据。
最后,WebService是基于HTTP和XML的技术。

     WebService,顾名思义就是基于Web的服务。它使用Web(HTTP)方式,接收和响应外部系统的某种请求。从而实现远程调用.
我们可以调用互联网上查询天气信息Web服务,然后将它嵌入到我们的程序(C/S或B/S程序)当中来,当用户从我们的网点看到天气信息时,他会认为我们为他提供了很多的信息服务,但其实我们什么也没有做,只是简单了调用了一下服务器上的一段代码而已。

       1:从WebService的工作模式上理解的话,它跟普通的Web程序(比如ASP、JSP等)并没有本质的区别,都是基于HTTP传输协议的程序。

 

       2:WebService所使用的数据均是基于XML格式的。目前标准的WebService在数据格式上主要采用SOAP协议。SOAP协议实际上就是一种基于XML编码规范的文本协议。

三、WebService的相关术语: = ws ->xml(wsdl) -soap

 名词1:XML. Extensible Markup Language -扩展性标记语言
XML,用于传输格式化的数据,是Web服务的基础。
namespace-命名空间。
xmlns=“http://xiaoma.cn” 使用默认命名空间。
xmlns:xiaoma=“http://xiaoma.cn”使用指定名称的命名空间。
名词2:WSDL – WebService Description Language – Web服务描述语言。
通过XML形式说明服务在什么地方-地址。
通过XML形式说明服务提供什么样的方法 – 如何调用。
名词3:SOAP-Simple Object Access Protocol(简单对象访问协议)
SOAP作为一个基于XML语言的协议用于网上传输数据。
SOAP = 在HTTP的基础上+XML数据。 - HTTP
SOAP是基于HTTP的。
SOAP的组成如下:
Envelope – 必须的部分。以XML的根元素出现。
Headers – 可选的。
Body – 必须的。在body部分,包含要执行的服务器的方法。和发送到服务器的数据。

 

 

 

相关文章:

flex获得指定时间段一共多少天

/** * 获得某个时间段 共有多少天 * param start 开始时间 * param end 结束时间 * return * */ public static function getTimeDays( start:Date , end:Date , type:int0):Number { var _re:int 0 ; if(start && end) { var _str:Numbe…...

互联网产品与需求二 评估需求

需求分析之评估需求 一.KANO模型 五个用户需求类型1.必备型需求必备型需求是用户认为产品“必须有”的属性或者功能当其特性不充足(不满足用户需求)时,用户很不满意当其特性充足(满足用户需求)时,无所谓满意…...

flex勾选,自动刷新

mxml: <s:CheckBox label"刷新" buttonMode"true" id "frc" selected "{model.autoFresh}" change "{model.startAutoQuery(frc.selected)}"/> <s:Label text"间隔"/> &…...

flex 下拉框验证组件

//继承验证 public class ObjectNullValidator extends Validator { public function ObjectNullValidator() { super(); requiredFieldError "必须填写" ; } private var _invalidCode:String "222"; public static function validateS…...

flex 事件机制详解

事件机制的工作流程 1&#xff1a;关于事件流 当一个事件发生&#xff0c;必然存在一个派发事件的对象&#xff0c;这里称之为目标对象。 当事件发生后flashPlayer生成一个携带数据的对象&#xff0c;然后检查目标对象是否处于显示层中&#xff0c;如果是则遍历从根容器一直到目…...

到底什么是互联网思维

本文转字http://www.managershare.com/2014/04/28/internet-thinking-magic-power/课前秀&#xff1a;三个段子 第一个段子&#xff1a;有一个毫无餐饮行业经验的人&#xff0c;他开了一家餐馆&#xff0c;菜品只有12道&#xff0c;在北京只有两家分店&#xff1b;仅两个月时间…...

面向对象编程的弊端

英文原文&#xff1a;What’s Wrong with OOP and FP 我不理解为什么人们会对面向对象编程和函数式编程做无休无止的争论。就好象这类问题已经超越了人类智力极限&#xff0c;所以你可以几个世纪的这样讨论下去。经过这些年对编程语言的研究&#xff0c;我已经清楚的看到了问题…...

互联网产品与需求三 需求优先级定义

需求优先级定义即便是已经少选评估出来的需求&#xff0c;很多时候量也是非常大的&#xff0c;而哪些该做&#xff0c;哪些不该做&#xff0c;很多时候我们会遇到&#xff1a;Boss拍脑袋要这么做自己拍脑袋要这么做顾此失彼&#xff0c;左顾右盼其实&#xff0c;在产品不同阶段…...

Hibernate 主键生成策略

<generator>:主键生成策略 increment:递增,hibernate自动产生主键.max(id) ,采用带走1算法,多进程/集群环境下不推荐使用. identity:设置表主键是自增字段,映射文件采用该策略,依赖底层库, auto_increment identity 适用于MySQL、DB2、MS SQL Server&#xff0c;…...

产品之增删查改显算传

原文&#xff1a;http://qingsong.sinaapp.com/?p422 不知道大家在做产品设计时有时候会不会和我一样&#xff0c;一个很简单的功能却给忽略了&#xff0c;或者一个很常规的应用点视而不见&#xff0c;等提交技术开发后才发现少了一点给开发带来了很多困扰&#xff0c;于是不得…...

互联网产品与需求一 获取需求的方法

一、行业调研分析报告​ 1中国移动互联网用户调查数据2列举一些常用的行业数据分析艾瑞网:http://www.iresearch.cn/199IT数据&#xff08;中文互联网数据咨询中心&#xff09;:http://www.199it.com/量子恒定(电商数据分析):http://www.lianezing.com/网站分析在中国:http://w…...

flex blaze+java通信的例子

步骤&#xff1a; 1&#xff1a;建立java web程序 2&#xff1a; 下载blazeDS包&#xff0c;解压后将WEB-INF下的 flex&#xff0c;lib&#xff0c;web.xml复制到java程序的WEB-INF下 3&#xff1a;打开web.xml文件将以下代码的注释去掉&#xff0c;并修改 <param-value>…...

flex验证座机,手机的框架

import mx.utils.StringUtil; import mx.validators.ValidationResult; import mx.validators.Validator; public class PhoneValidator extends Validator { public function PhoneValidator() { super(); } private var _phoneInvalid:String"正确格式(010-865…...

产品战略与战术之行业分析

产品的战略和战术之行业分析1确定行业规模行业的规模大小某种程度上讲他决定了产品能够有多少的盈利价值和体量​​互联网是一个强者通吃的行业第一名很舒服第二名能混第三名就很悲催了这一点和传统行业区别相当大&#xff0c;所以在做行业规模预测的时候需要我们仔细评估行业里…...

flex 计算指定日期是本年度第几周

/** * 计算指定日期是本年度第几周 *传日年月日&#xff0c;返回number */ private function weekOfYear(yyyy:Number,mm:Number,dd:Number):Number{ var myDate:Date new Date(yyyy, mm - 1, dd); var startDate:Date new Date(yyyy,0,1); v…...

flex计算某一日期的周开始和结束日期

/** * 计算 某个日期所在周的开始日期和结束日期 * param value * param isZero 0 当前时间 , 1 日期时间设置为0 &#xff0c; * return Array[0] 周一的日期 Array[1] 周日的日期 * */ public static function getCurrentDayFE(value:Date, isZero:int1):Array…...

flex时间便秒,秒变时间

/** * 秒变时间 * return * */ public static function secondToTime(second:int):Array { var hh:intint(second / 3600); var mm:intint((second % 3600) / 60); var ss:intsecond % 60; return [hh, mm, ss]; } /** * 时间变秒 * param hh 小时 * …...

flex dataGrid组件全选,反选,并获取选中值,代码详解

//1 组建重写 package hxht.comps.datagrid{ import flash.display.DisplayObject; import flash.events.Event; import flash.events.MouseEvent; import mx.collections.ArrayCollection; import mx.collections.IList; import mx.events.DynamicEvent; import spark.comp…...

flex data services

本文来自&#xff1a;http://www.blogjava.net/wldandan/archive/2007/12/06/165856.html 一 FDS相关概念 FDS全称Flex Data Services(现在Adobe将其改名为LiveCycle Data Services),是运行在服务器端的 java程序.它能够运行在大部分的java应用服务器上,包括JRun, JBos…...

actionScript 数组去重

public function unique(array:Array):Array { for (var i:int0; i < array.length; i) { for (var j:inti 1; j < array.length; j) { //注意 if (array[i] array[j]) { array.splice(j, 1); j--; } } } return array…...

Java中堆内存和栈内存详解

Java把内存分成两种&#xff0c;一种叫做栈内存&#xff0c;一种叫做堆内存 在函数中定义的一些基本类型的变量和对象的引用变量都是在函数的栈内存中分配。当在一段代码块中定义一个变量时&#xff0c;java就在栈中为这个变量分配内存空间&#xff0c;当超过变量的作用域后&am…...

产品战略战术之预测行业发展趋势

1、根据行业历史预测行业发展趋势移动互联网发展之路从基础性服务面向用户&#xff08;工具类&#xff0c;单体服务类&#xff09;面向应用&#xff08;统计学&#xff0c;关高分享&#xff0c;渠道投送&#xff0c;流量导入&#xff09;到媒体社区类传统互联网迁移&#xff08…...