浅析Java的Socket网络编程

来源 :E动时尚·科学工程技术 | 被引量 : 0次 | 上传用户:njxgfd
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  随着网络技术的飞速发展,互联网的普及范围也越来越广,已经成为当前影响力最大的网络应用开发平台,各个开发商以及编程人员都需要严格遵守其基本准则。JAVA 语言具有多线程、一次编写以及与平台没有直接关联等特性,非常适应互联网平台网络应用开发。因此 Java语言 在当今信息时代极具影响力。
  在Java语言中,TCP 网络程序是指利用 Socket 编写的通信程序。利用 TCP 协议进行通信的两个应用程序是有主次之分的,一个是服务器程序,一个是客户端程序,两者的功能和编写方法不太一样。其中 ServerSocket 类表示 Socket 服务器端,Socket 类表示 Socket 客户端,两者之间的交互过程如下:
  (1)服务器端创建一个 ServerSocket(服务器端套接字),调用 accept()方法等待客户端来连接。
  (2)客户端程序创建一个 Socket,请求与服务器建立连接。
  (3)服务器接收客户的连接请求,同时创建一个新的 Socket 与客户建立连接,服务器继续等待新的请求。
  一、使用 TCP/IP 协议
  TCP/IP 协议是一种面向连接的保证可靠传输的协议,通过 TCP协议传输,得到的是一个顺序的无差错的数据流。发送方和接收方必须成对地建立两个 socket 连接,以便在 TCP 协议的基础上进行通信,当一个socket(通常都是 server socket)等待建立连接时,另一个 socket 可以要求进行连接,一旦这两个 socket 连接起来,它们就可以进行双向数据传输,双方都可以进行发送或接收操作。
  二、使用 UDP 协议
  UDP 协议是一种无连接的协议,不保证信息的可靠传输,由Java 技 术 中 的 DatagramSocket 和 DatagramPacket 类 支 持。DatagramSocket 对应 TCP/IP 协议下的 Socket 概念,但不需要创建两个 socket,不可使用输入输出流。DatagramPacket 数据包,是 UDP 协议下进行传输数据的单位,数据存放在字节数组中,其中包括了目标地址和端口以及传送的信息(所以不用建立点对点的连接)。由于 TCP/IP 协议能够提供可靠的数据传输,如何在发送方和接收方建立 Socket 连接是关键的步骤。
  三、基于 TCP/IP 协议的 Socket 连接方法
  Java 中 Socket 连接的建立是通过 Socket 类实现的,通过重载的构造函数可以直接连接服务器,也可以建立未连接的 Socket 对象,并通过 connect 方法来连接服务器。此外,还支持自动或手动方式选择本机的 IP 地址。
  1.通过构造函数直接连接服务器
  (1)自动选择 IP。
  这种方式是最常用的。使用的构造函数有如下两种:在使用时只需要提供一个字符串类型的 IP 地址或域名以及一个整型的端口号即可,可能会抛出两个异常:UnknownHostException(提供的host并不存在或不合法)和IOException(其它的错误)。这个构造函数只是将字符串形式的 host改为 InetAddress对象类型了,从而支持使用 Socket 类多次连接同一个IP或域名,效率比较高。在这个构造函数中只会发生IOException 异常,
  UnknownHostException 异常由 InetAddress 类抛出。
  (2)手动绑定 IP。
  当本机有多块网卡或者在一个网卡上绑定了多个 IP 时,在连接服务器时也可以通过构造函数指定需要使用哪个 IP。这时可以使用 Socket 类的另外两个构造函数来处理。这两个构造函数的参数分为两部分,第一部分为前两个参数分别表示要连接的服务器的 IP 和端口号。第二部分为后两个参数,其中 inetaddress1 表示要使用的本地 IP,而localPort则表示要绑定的本地端口号,在一般情况下将 localPort 设为 0。
  (3)通过 connect 方法连接服务器
  可以先建立未连接的 Socket 对象,再通过类的 connect 方法来连接服务器,还可以通过类的 bind 方法来绑定本地 IP。
  四、结束语
  TCP、UDP 和IP协议是网络操作系统的内核,对用户应用程序是透明的,用户通过 TCP/IP 的编程界面调用这些内核程序,从而开发应用程序。编程界面有两种形式,一种是由网络操作系统内核为用户应用程序提供系统功能调用,另一种就是所谓的套接字(Socket)。套接字本质上就是一種函数调用(函数库),用户通过这些函数编写 TCP/IP 应用程序Java 网络编程可以支持多种协议,而在 TCP/IP 协议下建立Socket 连接也有多种方法,其中 IP 地址和网关的设置都会影响连接的建立,还需要在应用时由编程者保证代码执行后连接的建立,才能执行之后的收发双方 I/O 通道的建立及通信过程。
  参考文献
  [1]王常衡,任广鹏,罗钦,et al.基于TCP的Socket网络编程[J].科技经济导刊,2019,27(07):42.
  [2]张雪坤.基于Socket的网络聊天程序设计与实现[J].电脑编程技巧与维护,2018(4):16-17.
其他文献
摘 要:沉积相标志是正确划分沉积相的直接证据,具体有沉积学标志、古生物化石标志、地球物理测井相标志以及地球化学标志等,这些标志是各种水动力条件存在的证据,也是研究沉积相特征进行相分析的重要内容。  关键词:沉积相;沉积构造;古生物;测井相;地球化学  引言  沉积岩及其所处的沉积环境为沉积相,在地层划分方案基础上,通过相标志分析,典型钻井取心段沉积微相发育特征,从而总结沉积相的时空演化规律。在沉积
期刊
摘 要:石油在储存以及开采的过程中,由于自身所具有的易爆、易燃等特点,所以不可避免的存在一些安全隐患,这给油气生产以 及油田设施带来了较大的威胁。目前,从油田设备进行管理的角度出发,对消防设施及时的进行检修,提升安全保障力度,已成为油田生产工作中的重点。因此,本文对消防设备安全管理进行了探究。  关键词:油田消防设备;措施;安全管理  对油田中的安全设备进行有效管理,不仅是为了保障设备的实用性,也
期刊
摘 要:随着祖国经济的不断发展,人们出行的方式也变的更加便利。客流量的统计、客流的高峰期以及客流的流动规律成为了当前城市轨道交通运营单位所面临的主要问题。因此,城市轨道交通运营单位需要每天将乘客的数量进行统计,对乘客的出行规律做出归纳,制定出高效能的列车运输方案,这套方案能够在成本方面、运能方面、客流需求方面实现合理化的平衡,使城市轨道交通单位能够获得更高的利益。本文主要对此进行了探索和研究。  
期刊
摘 要:随着社会生活的快节奏发展,人们遗失东西的现象经常发生,为了防止重要的东西丢失,高精度的防丢器应运而生。本文设计并实现了一款高精度的电子防丢器,它包括发射部分和接收部分组成,发射部分置于防丢物品上,接收部分放在身边携带,发射器和接收器的距离超过预定的距离就会报警,其中主控芯片选择STM32F103,无线接收发送芯片选择DWM1000。  关键词:防丢器;DWM1000;STM32F103  
期刊
摘 要:我国地广物博,煤矿资源储藏丰富,一直是我国能源保障。但是,在部分煤炭资源开采作业过程中,需要面对复杂的地质条件,比如断层、地表压力大等,只有应用科学的采煤掘进支护技术,才能为煤矿挖掘作业提供效率与安全保障。基于此,本文针对复杂地质条件下煤矿掘进枝术进行深入探析,并详细探讨了复杂地质条件下采煤掘进支护技术的应用途径,以供参考。  关键词:复杂地质条件;采煤掘进;支护技术  我国煤炭开采历史悠
期刊
摘 要:本文针对都匀电厂2×600MW输煤系统的防堵、防尘、防噪音改造深入研究,提出了具体实施方法以及效应的实例,供相关行业应用。  关键词:流线型;落煤管;防堵;防尘;防噪音  1 输煤系统燃料属性及煤流分析  1.1 燃料特性  都匀发电厂燃用的煤种较为复杂,大部分燃用地方煤和水城煤,水城来煤主要是泥煤,煤的成分含水分较大,约为的水分;来煤通过落煤管时易堵煤。  1.2 煤流下落过程分析  物
期刊
随着青海农牧区的生产效益不断提升,随之而来的是农牧民的生活水平越来越高。但是在发展的同时,也面临着一些问题,能否有效解决这些问题,是决定未来农牧区土地管理使用的关键事项,因此加强农牧区土地管理成为了土地管理部门的一项关键任务。  一、青海农牧区土地管理中存在的问题  1、土地经营分散,限制了生产力的提高  从目前青海省农牧区土地管理状况来看,土地经营碎片化、分散化是一个突出问题,对集约化、规模化农
期刊
摘 要:电子技术作为当下的一项热门技术,在各个行业中都有着广泛的应用,其中包含的两个主要方向,就是模拟电子技术和数字电子技术,这两种技术在发展上前景都十分广阔,但是分别有着不同的特点,因此在进行应用的时候,需要按照具体情况选择合适的技术,因此,本文主要针对两种技术的分析,和在实际生产中的应用进行比较,说明两种技术各自具备的优势。  关键词:模拟电子技术;数字电子技术;优势对比  模拟电子技术和数字
期刊
摘 要:碳硫含量对钢铁的性能有显著影响,准确测定碳硫含量对改进工艺、改善钢铁的性能具有重要意义。针对高频红外碳硫分析仪测定钢铁中碳硫的过程,详细分析了各个环节可能产生的误差,对减少误差和提高准确度的方法进行了探讨研究。  关键词:钢铁;红外碳硫仪;碳硫;准确度  钢铁在我国工业生产中有着至关重要的作用,所以提高钢铁的质量是十分重要的。碳硫是钢铁炼制中十分常见的元素,且碳硫元素的含量影响着钢铁的质量
期刊
摘 要:台风“利奇马”虽是自然因素诱发的不可挽回的重大损失,但不要绝对的把它的突袭造成的损失归因为“自然灾害”,在很大的程度上是“可以管理疏导与防控避免”的。论文通过对油田物资供应材料仓储发生内涝的影响因素进行科学分析,提出内涝防控有效对策与智能化技术创新。  关键词:物资供应;仓储安全;内涝;内控;智能化  前言  在油田物资供应材料仓储实现高质量服务与发展的转型升级中,防控内涝是一项十分重要的
期刊