探究Java程序设计网络编程_第1页
探究Java程序设计网络编程_第2页
探究Java程序设计网络编程_第3页
探究Java程序设计网络编程_第4页
探究Java程序设计网络编程_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、探究java程序设计网络编程摘要:网络编程技术是现在比较流行的软件研发 技术,本文介绍在java语言中如何进行tcp和udp格式的 网络编程,通过简单的实例演示网络编程的基本方法,旨在 对网络编程爱好者起到抛砖引玉的作用。关键词:数据包;tcp协议;udp协议abstract:network programming technologyisnow more popularsof tware developmenttechnology,this paper introduceshow tcp andudp formatin javanetwork programming,thebasic met

2、hod ofdemonstration examples ofnetwork programmingsimple,it isto play the roleofnetworkprogramming enthusiastsplay.key words:data packets;tcp protocol;udp protocol 中图分类号:tp311文献标识码:文章编号:引言:计算机网络是计算机技术和通信技术紧密结合的 产物,对如今社会发展有着深远的影响。网络编程的目的就 是指直接或间接地通过网络协议与其他计算机进行通讯。网 络编程中有两个主要问题:一个是如何准确地定位网络上一 台或多台主机,另

3、一个就是找到主机后如何可靠高效地进行 数据传输。在tcp/ip协议中ip层主要负责网络主机的定位, 数据传输的路由,由ip地址可以唯一地确定internet 的 一台主机。而tcp层则提供面向应用的可靠的或非可靠的数 据传输机制,这是网络编程的主要对象,一般不需要关心ip 层是如何处理数据的。java历史java是由sun microsystems公司于1995年5月推出的 一种程序设计语言,主要应用于互联网、个人pc、数据中心、 游戏控制台、科学超级计算机。它刚开始的名字叫 “oak” .java最初是为电视、控制烤面包机等家用电器的交 互操作而设计的,但当时并没有得到成功的推广、随着互联

4、网的发展,java经过数次的设计和改进后演变成当前受到极 大欢迎的java。基于java前身设计的特点,其具备了可移植性和平台无 关性,成为了可以运行于不同的环境、不同的cpu上的程序 语言。当前java在全球得到了大量的推广和应用,在计算机 应用中发挥着强大的作用。一、tcp和udp协议tcp和udp协议属于传输层协议。其中tcp提供ip环境 下的数据可靠传输,它提供的服务包括数据流传送、可靠性、 有效流控、全双工操作和多路复用。通过面向连接、端到端 和可靠的数据包发送。通俗说,它是事先为所发送的数据开 辟出连接好的通道,然后再进行数据发送;而udp则不为ip 提供可靠性、流控或差错恢复功能

5、。一般来说,tcp对应的 是可靠性要求高的应用,而udp对应的则是可靠性要求低、 传输经济的应用°tcp支持的应用协议主要有:telnet、ftp、 smtp等;udp支持的应用层协议主要有:nfs、snmp、dns、 tftp 等。二、网络通信中java的网络类和接口java中有关网络方面的功能都定义在java, net程序包 中。java所提供的网络功能可大致分为三大类:(%1) url 和 urlconnection:使用 socket 类进行网络 编程相当麻烦。对已经存在的协议,程序员应当了解它的每 一段代表的含义,改而使用url类可以很大程度上免去这些 麻烦。1. url

6、类url是类url表示统一资源定位器,即指向网上某处资 源的指针。一个url包括协议名和主机名,有些还包括特定 的端口号。2. urlconnection 类通过url的方法openstream (),只能从网络上读取数据, 如果同时还想输出数据,例如向服务器的cgi程序发送一些 数据,则必须先与url建立连接,然后才能对其进行读写, 这时就要用到urlconnection类了。cgi是公共网关接口的 简称,它是用户浏览器和服务器端的应用程序进行连接的接 口。urlconnection类可以由两种方式构建:一种是通过一 个url实例openconnection()方法返回一个,另一种是直接 通

7、过 new urlconnection(url ul)来创建。urlconnection 实例不仅可以实现接收消息,还可以发送消息。(%1) socket:又称套接字,是网络编程中最原始的通 信方式之一。一个套接字通常包含一个ip地址和一个端口 地址,后者一般对应着某个应用程序。因此如果要进行 socket编程,首先要确定端口。一般来说,1024以下的端 口已经被指定为固定的服务类型,如果用户要开发自己的交 流平台,必须使用之后的端口地址。套接字(socket)允许程序把网络连接当成一个流,可 以向这个流写字节,也可以从这个流读取字节。java的 socket类提供了丰富的功能。服务器使用的一

8、般是 serversocket,通过连接使双方都会产生一个实例,对实例 进行操作来实现通信。大部分工作都是在抽象类socketlmpl 中定义的。任何一个网络程序都离不开连接的建立、读写操作、关 闭,程序还分为客户和服务器两种类型。除了关闭操作可以 简单地使用close()方法外,读写操作都不是一句话说得完 的。(%1) datagrani:是一种面向无连接的通信方法。它基 于udp协议,不需要建立和释放连接,每次通信时只要构造 一个datagrampacket实例发送出去,对方同样构造一个 datagrampacket实例接收。以datagram方式传送数据时, 只是把数据的目的地记录在数据

9、包中,然后就直接放在网络 上进行传输,系统不保证数据一定能够安全送到,也不能确 定什么时候可以送到。三、java实现加密java的网络功能十分强大,还体现在作用它可以轻松实 现各种加密算法。如今加密算法大致可分为两类:对称加密 和公钥加密。对称加密,发送方和接收方使用同样的密钥,前者用它 来加密,后者则用它解密。这样做本来是很安全的,例如3des 的密钥为112位,这样的组合数大约是5x1033,几乎不可 能被攻破。但是密钥总要在双方交换,因此交换途径的保密 性就很关键,使用人工固然安全却麻烦,在网络上传输虽方 便但危险。故如今网络上大多使用公钥加密方式。公钥加密的优点在于,加密和解密的密钥是

10、不同的,前 者称为公钥,后者称为私钥。公钥,顾名思义,是可以公开 的,一台电脑里可能存放了很多远程通讯方提供的公钥。公钥解密还可以用在数字签名上,这时的动作是相反 的:用私钥加密,和用公钥解密。java里用于实现这方面功 能的是java.省略包中。四、结束语总之,网络编程中java程序设计,除了上述的一些应 用外,还有很多地方可以使用接口,比如在java的事件机制 中就常用到接口。另外,对于一些已经开发好的系统,在结构 上进行较大的调整已经不太现实,这时可以通过定义一些接 口并追加相应的实现来完成功能结构的扩展。学好java程 序设计可以帮助我们更好的理解和运用面向对象的设计原 则。使我们能设计出更好的软件系统。参考文献:1 印旻.java语言与面向对象程序设计m.北京:清华 大学出版社,20072 朱福喜.java语言程序设计

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论