java基础之网络编程

来源:互联网 发布:系统升级软件 编辑:程序博客网 时间:2024/04/29 23:17
网络编程,也就是如何实现俩台计算机之间的通信,如何实现客户端与服务器端之间的通信的问题。这是本章中关注的主要的问题。
这是本章中要说的主要的内容。
我们的计算机地址一般来说是用IPv4来表示的,当然现在已经出现了IPv6了。计算机地址一般来说,是使用4个字节,也就是32位来表示的。但是在日常生活中,我们常看到的192.168.73.70是用十进制来进行表示的。每一个字节中用一个.号分割开来。我们平时说的主机名,也成为域名。java中,为了找到本机地址,我们一般是使用InetAddress类的静态方法getLocalHost来获取得到的。
通过getByName()这个方法,可以实现主机名与IP地址之间的相互转化,这是要注意的。
下面是UDP协议的使用。
对于这个协议的话,我们可以举一个简单的例子。比如。一个儿子要给他的父亲写信。那么应该怎么办呢?那么儿子就是发送方,而父亲就是接收方。那么儿子要给父亲寄信的时候,那么儿子就要写清楚父亲的地址和门牌号。对应于这种协议的话,也就是所谓的接收方的IP地址和门牌号。同时儿子也要写清楚自己作为寄信人的地址,对应于这种协议的话,也就是所谓的IP地址。这是要注意的。
接下来我们要讲述的是TCP协议。同样是上面的例子。儿子在给父亲寄信的时候,就先打电话给父亲,告诉他,我要寄信给你了。TCP是面向连接的,而且是可靠的,而且用得是比较多的。记号比如我们在打电话的时候,不是你拨完电话以后,就可以立即接通。需要等待一段时间以后,等待对方接通后,才可以进行通话。
"time.nist.gov"可以说是时间服务器的名称,然后接下来的13可以说是端口号。
在这里最重要的方法是server.accept()这个方法。也就是服务器端会一直等待客户端来连接它。如果一直没有等到,那么这个方法就会一直阻塞。这是要注意的。
那么我们如何利用多线程来进行处理呢?我们可以为每一个客户端都开启一个线程,只要服务器足够大的话。
这就是使用多线程来处理多个客户端的连接。只要有一个客户端过来和我连接,那么服务器端就开启一个线程和它连接。
下面我们来介绍一下Socket的关闭与半关闭。所谓的半关闭就是说,比如我有一个客户端和一个服务器端,如果客户端已经没有东西发给服务器端了的话,那么这个服务器端的输出流就可以关闭了。但是它还可以接受服务器端给它发送的消息。这是要注意的。
我们还来介绍一下同一资源定位符。所谓的同一资源定位符就是说,我可以利用这个定位符来找到这个网络上的任何一个资源。
最后我们来介绍一下超链接。
以上就是所介绍的全部的内容。
                                             
0 0
原创粉丝点击