全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货

Java开发技巧|Java的Socket编程

发布时间:2021-05-18 09:23:00
发布人:小千

      socket编程一般指的就是网络编程,常见的服务端和客户机都是必不可少的,今天小千就来给大家介绍一下socket编程中常见的概念问题。

      一、常见传输协议

      1、tcp协议

      TCP (Transmission Control Protocol,传输控制协议):“面向连接 ”,可靠的、基于字节流的运输层(Transport layer)通信协议 。

      面向连接服务要经过三个阶段:数据传数前,先建立连接,连接建立后再传输数据,数据传送完后,释放连接。面向连接服务,可确保数据传送的次序和传输的可靠性。

      2、udp协议

      UDP(User Datagram Protocol ,用户数据包协议):“面向非连接”,在正式通信前不必与对方先建立连接,不管对方状态就直接发送。

      无连接服务的特点是:无连接服务只有传输数据阶段。消除了除数据通信外的其它开销。

      3、IP协议

      IP( Internet Protocol ):计算机网络相互连接进行通信而设计的协议。互联网地址或Internet地址。是用来唯一标识互联网上计算机的逻辑地址。

1

      二、URL实现网页静态化

      类 URL 代表一个统一资源定位符,它是指向互联网“资源”的指针。利用他可以获得网络资源,读取WWW服务器上的数据。

      这里我们将读取到的数据转换为流,然后保存到本地(类似网页静态化)。

2

      三、TCP套接字

      为了区别不同的应用程序进程和连接,许多计算机操作系统为应用程序与TCP/IP协议交互提供了称为套接字(Socket)的接口。

      Socket可以看作是通信连接两端的收发器。

3

      套接字,Socket是网络上运行的程序之间双向通信链路的端点。Socket所要完成的通信就是基于连接的通信,建立连接所需的程序分别运行在客户端和服务器端。套接字连接就是客户端的套接字对象和服务器端的套接字对象通过输入/输出流连接在一起。

      2、TCP套接字

      在Java中,套接字(通信端点)被抽象为类,我们只需要创建Socket类的对象,就可以使用套接字。Socket中有输入输出流对象,同时能实现服务器之间的数据传输。

      3、Socket部分

      通过将这3个参数结合起来,与一个Socket绑定,应用层就可以和传输层通过套接字接口,区分来自不同应用程序进程或网络连接的通信,实现数据传输的并发服务。

      一个程序(Program B )将一段信息写入Socket中,该Socket将这段信息发送给另外一个Socket(Program A)中,使这段信息能传送到其他程序中。

      Socket工作步骤:

      a、建立连接

 

      在服务器端通过指定一个用来等待的连接的端口号创建一个 ServerSocket实例.

      在客户端通过主机和端口号创建一个 socket实例,连到服务器上.

      ServerSocket类的accept方法使服务器处于阻塞状态,等待用户请求

      b、数据通信

      建立socket连接后,还应该建立输入输出数据流,客户程序可以向Socket写入请求,服务器程序处理请求,并把处理结果通过Socket返回给客户端,完成通过虚拟通道的数据通信;

      c、拆除连接

      通信结束,将所建立的虚拟连接全部拆除。

      以上就是关于Java socket编程的介绍了,最后欢迎对Java开发感兴趣的同学来到千锋java培训班了解我们的java学习课程,现在咨询更有免费java学习资料可以领取,赶紧去找在线老师申领吧。

相关文章

华为的总干部部跟人力资源有什么区别?

华为的总干部部跟人力资源有什么区别?

2023-10-14
为什么Go服务容器化之后延迟变高?

为什么Go服务容器化之后延迟变高?

2023-10-14
PLC与单片机控制系统的本质区别是什么?

PLC与单片机控制系统的本质区别是什么?

2023-10-14
STM32外部8M不起振会有什么现象?

STM32外部8M不起振会有什么现象?

2023-10-14

最新文章

常见网络安全面试题:Windows常用的命令有哪些?

常见网络安全面试题:Windows常用的命令有哪些?

2023-10-09
常见网络安全面试题:根据设备告警如何展开排查?

常见网络安全面试题:根据设备告警如何展开排查?

2023-10-09
常见网络安全面试题:mysql加固呢?(数据库加固)

常见网络安全面试题:mysql加固呢?(数据库加固)

2023-10-09
常见网络安全面试题:windows和linux加固?(操作系统加固)

常见网络安全面试题:windows和linux加固?(操作系统加固)

2023-10-09
在线咨询 免费试学 教程领取