- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
JAVA和 NET的相互调用 TCP IP套接字相
JAVA与 NET的相互调用 TCP IP套接字相
TCP/IP套接字的概念
TCP/IP(传输控制协议/网际协议)是网络互连的通信协议,通过它可以实现各种异构网络或异种机之间的互联通信。TCP/IP是Transmission Control Protocol/Internet Protocol的简写,中文译名为传输控制协议/因特网互联协议,又叫网络通讯协议,这个协议是Internet最基本的协议、Internet国际互联网络的基础,简单地说,就是由网络层的IP协议和传输层的TCP协议组成的。TCP/IP定义了电子设备(比如计算机)如何连入因特网,以及数据如何在它们之间传输的标准。TCP/IP是一个四层的分层体系结构。高层为传输控制协议,它负责聚集信息或把文件拆分成更小的包。低层是网际协议,它处理每个包的地址部分,使这些包正确的到达目的地。TCP/IP已成为当今计算机网络最成熟、应用最广的互联协议。Internet采用的就是TCP/IP协议,网络上各种各样的计算机上只要安装了TCP/IP协议,它们之间就能相互通信。
TCP/IP套接字通讯的开发
在众多的开发语言中,绝大部分的开发语言都支持TCP/IP协议通讯,开发过程也十分相像,先设置好Socket,然后由客户端发送请求信息,服务器连接客户端接收到请求后再返还信息。而在.NET系统当中则稍有不同,系统把Socket对象包装在TcpClient对象内,对Socket对象的生命周期进行管理。在开发过程当中,服务器与客户端的开发语言有所不同的情况经常发生,服务器是在JDK1.6的环境下进行开发的,客户却要求使用.NET开发客户端,这往往会令开发人员感到困惑!下面在下使用JAVA为服务器,.NET为客户端为例子,为大家介绍一下如何使用TCP/IP协议进行JAVA.NET之间的相互调用。像TCP/IP实现聊天室这样的例子很多,开发起来也比较简单,因为通讯双方都是使用String来传送信息。而在真正建立ERP、OA、CRM等系统的时候,通讯双方都必须先建立一套统一的通讯契约,才能实现TCP/IP通讯,下面将为大家介绍一个比较典型的企业信息通讯实例。
服务器端开发
通讯契约
首先建立一套服务器与客户端同时接受通讯契约,Contract的name特性是契约的名称,服务器会通过此名称在Contracts.xml文件中找到该契约,然后根据output的package属性,class属性,method属性找到该契约的命令空间,类名,调用的方法等属性。
Contracts.XML Contracts Contractname=GetPersonByAge//name为契约名,服务器与客户端必须同时遵守此契约
Input Description获取Age等于此值的People对象集/Description//说明此契约内容
/Input Output Package Manager/Package//接收到GetPersonByAge请求时所调用的包名称
Class PersonManager/Class//接收到GetPersonByAge请求时所调用的类名称
Method GetListByAge/Method//接收到GetPersonByAge请求时所调用的处理方法名称
/Output
/Contract Contractname=GetPersonByID
Input Description获取ID等于此值的People对象/Description
/Input Output Package Manager/Package Class PersonManager/Class Method GetListByID/Method
/Output
/Contract
/Contracts信息传输方式因为.NET与JAVA各有不同的特性,双方的不可能直接通过的序列化对象来传输信息,常用的信息交换方式有以下三种:
1.最笨拙也是最复杂的一种传息方式,就是直接使用头文件说明+字段属性的方式。这是一个既原始又麻烦的通讯方式,因为每个契约都要以二进制的方式发送一个请求,就算是同一个契约,随着参数的不同,每个请求的长度也会发生改变。这样的传息方式虽然是麻烦,在不同开发语言相互引用的时候却经常会看到,这可能是开发人员对两种开发语言未能完全熟悉,所以倒置使用这最原始最简单的开发方式。
2.使用XML的信息传送方式,这是最常见,使用最广的信息传递方式。在绝大多数的开发平台都会支持XML,所以XML在Web网络传讯过程中最为常见。但XML最大的一个缺点就是过于堪舆,耗费大量的传输流量。
3.对于XML的缺点,JSON应运而生而且发展迅速,JSON本是源于Javascript的,多数只用于B/S的页面开发,但随着技术的
您可能关注的文档
- 2011福建会计从业资格学习笔记整理和历年真题A.doc
- 2011心理咨询师职业资格教材之变态心理学和健康心理学.pdf
- 2011心理咨询师职业资格培训教材之变态心理学和健康心理学.pdf
- 2011造价工程师建设工程技术和计量模拟题及答案.pdf
- 2011银行从业资格考试风险管理考前预测试题和答案解析.doc
- 2011造价工程师考试计价和控制内部讲义——工程造价计价依据.doc
- 2011福建会计从业资格学习笔记整理和历年真题B.doc
- 2011高考化学解题方法系列专题平均摩尔电子质量和极限法.doc
- 2011贵州和陕西会计从业资格学习笔记整理和重点内容讲义C完.doc
- 2011造价工程师考试计价和控制内部讲义.doc
原创力文档


文档评论(0)