当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:13:00  来源:本站整理

Java网络编程从入门到精通(28):得到ServerSocket信息的办法及[Java编程]

赞助商链接



  本文“Java网络编程从入门到精通(28):得到ServerSocket信息的办法及[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

与ServerSocket对象相关的信息有两个:绑定端口和绑定IP地址.绑定端口可以通过getLocalPort办法得到.绑定IP地址可以通过getInetAddress办法得到.

1、getLocalPort办法

getLocalPort办法的返回值可分为以下三种情形:

1.ServerSocket对象未绑定端口,getLocalPort办法的返回值为-1.

2.ServerSocket对象绑定了一个固定的端口,getLocalPort办法返回这个固定端口.

3.ServerSocket对象的绑定端口为0,getLocalPort办法返回一个随机的端口(这类端口被称为匿名端口).

getLocalPort办法的定义以下:

public int getLocalPort()

getLocalPort办法主如果为这些匿名端口而预备的.下面的代码演示了ServerSocket对象产生随机端口的历程:

package server;
import java.net.*;
public class RandomPort
{
     public static void main(String[] args) throws Exception
     {
         for (int i = 1; i <= 5; i++)
         {
             System.out.print("Random Port" + i + ":");
             System.out.println(new ServerSocket(0).getLocalPort());
         }
     }
}

运行后果:

1.主动情势

在主动情势中,FTP服务器绑定了两个端口:21和20 (这两个端口是默许值,可以设成别的端口).此中21端口负责客户端和服务器之间的号令传送.一开始,由客户端主动衔接服务端的21端口,并且向服务器发送呼应的FTP号令.别的一个端口20是负责客户端和服务端的数据传送.但要注意,并非客户端主动衔接服务端的20端口,而是在客户端成立一个利用匿名端口的服务端衔接(在Java中就是成立一个ServerSocket对象,并且绑定端口是0).然后客户端通过21端口将这个匿名端口告诉服务端.最后,服务端主动衔接客户端的这个匿名端口(所以这种情势叫主动情势,就是服务器主动衔接客户端).图1描写主动情势的工作原理.

图1  主动情势的工作原理

从图1可以看出,在主动情势中,在传送号令和数据时,成立衔接的历程是相反的.也就是说,在传送号令时,由客户端主动衔接服务器的21端口.而传送数据时,由服务器主动衔接客户端的匿名端口.这种方法是FTP服务器最初的工作情势,但这种情势有很大的范围性.如客户端通过代理上网,并且未做端口映射.在这种情形下,服务端是无法主动和客户端成立衔接的.因此,这就产生的另一种情势:被动情势.


  以上是“Java网络编程从入门到精通(28):得到ServerSocket信息的办法及[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • 利用Javascript实现网页水印(非图片水印)
  • Java开辟环境的搭建
  • Ubuntu java安装与配置
  • 办理Ubuntu 10.04 Firefox3.6 Java浏览器插件不工作的问
  • Ubuntu重装后Java环境的设置
  • Sun Java进入Ubuntu 10.10软件中央
  • Ubuntu 10.10配置Java开辟环境
  • 在Ubuntu 10.10中配置Java环境变量的办法
  • Ubuntu下Java环境的搭建
  • Ubuntu 10.04 下安装 Java, JRE
  • Ubuntu 10.04下的搭建SUN JAVA开辟环境
  • Ubuntu 12.04安装java7
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .