疯狂java


您现在的位置: 疯狂软件 >> 新闻资讯 >> 正文

Java的基本网络支持—[疯狂java讲义]


 

         Java为网络支持提供了j ava.net包,该包下的URL和URLConnection等类提供了以编程方式访问Web服务的功能,而URLDecoder和URLEncoder则提供普通字符串和application/x-www-form-urlencoded MIME字符串相互转换的静态方法。
 
使用InetAddress
 
        Java提供了InetAddress类来代表IP地址,InetAddress下还有2个子类:Inet4Address, Inet6AddreSS,它们分别代表Internet Protocol version 4 (IPv4)地址和Internet Protocol version 6 (IPv6)地址。
 
InetAddress类没有提供构造器,而是提供了如下两个静态方法来获取InetAddress实例:
 
1、getByName(String host):根据主机获取对应的InetAddress对象。
 
2、getByAddress(byte口addr):根据原始IP地址来获取对应的InetAddress对象。InetAddress还提供了如下三个方法来获取InetAddress实例对应的IP地址和主机名:
 
    1)String getCanonicalHostName():获取此IP地址的全限定域名。
    2)String getHostAddress():返回该InetAddress实例对应的IP地址字符串(以字符串形式)。
    3)String getHostName():获取此IP地址的主机名。
 
        除此之外,InetAddress类还提供了一个getLocalHost()方法来获取本机IP地址对应的InetAddress实例。
 
        InetAddress类还提供了一个isReachable()方法,用于测试是否可以到达该地址。该方法的实现将尽最大努力试图到达主机,但防火墙和服务器配置可能阻塞请求,使其在某些特定的端口可以访问时处于不可达的状态。如果可以获得权限,则典型实现将使用ICMP ECHO REQUEST;否则它将试图在目标主机的端口7Echo上建立TCP连接。(摘自[疯狂java讲义])