学习Java(13)之网络编程
Posted So istes immer
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学习Java(13)之网络编程相关的知识,希望对你有一定的参考价值。
1.简介
互联网上的计算机之间的通讯是通过
TCP(Transport Control Protocol)或UDP(User Datagram Protocol)协议
TCP是一个基于连接的协议,它能够提供两台计算机之间的可靠的数据流 . HTTP、FTP、Telnet等应用都需要这种可靠的通信通道
UDP是从一台计算机向另一台计算机发送称为数据报的独立数据包的协议,该协议并不保证数据报是否能正确地到达目的地。它是一个非面向连接的协议
一台机器只通过一条链路连接到网络上,但一台机器中往往有很多应用程序需要进行网络通信。网络端口号(port)就是用于区分一台主机中的不同应用程序
套接字
源IP地址和目的IP地址以及源端口号和目的端口号的组合称为套接字。其用于标识客户端请求的服务器和服务
Java的网络编程分为三个层次:
①最高一级的网络通信是从网络上下载Applet。
②次一级的通信,就是通过类URL对象指明文件所在位置,并从网络上下载声音和图像文件,然后对声音播放和图像显示。
③最低一级的通信是利用java.net包中提供的类直接在程序中实现网络通信
2.URL
统一资源定位符(Uniform Resource Locator)
功能是指向计算机里的资源,即定位
有时候在地址后面还要指定使用哪一个端口(Port),例如http://www.sun.com:80/index.html。
如果URL没有指定使用哪一个端口,则会根据通信协议使用默认的端口。
一般地,http协议默认端口为80,ftp协议默认端口为21
3.客户/服务器的本质区别
服务器方(Server)总在监听一个特定的端口
客户(Client)则向该端口发出连接请求
4.使用Socket进行网络通信的过程
①服务器程序将一个套接字绑定到一个特定的端口,并通过此套接字等待和监听客户的连接请求。
②客户程序根据服务器程序所在的主机名和端口号发出连接请求
③如果一切正常,服务器接受连接请求。并获得一个新的绑定到不同端口地址的套接字
④客户和服务器通过读、写套接字进行通讯
以上是关于学习Java(13)之网络编程的主要内容,如果未能解决你的问题,请参考以下文章