知识大全 使用getCanonicalHostName方法获得主机名
Posted 知
篇首语:韬略终须建新国,奋发还得读良书。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 使用getCanonicalHostName方法获得主机名相关的知识,希望对你有一定的参考价值。
Java网络编程从入门到精通(6):使用getCanonicalHostName方法获得主机名 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
getCanonicalHostName方法和getHostName方法一样 也是得到远程主机的域名 但它们有一个区别 getCanonicalHostName得到的是主机名 而getHostName得到的主机别名 getCanonicalHostName的定义如下
public String getCanonicalHostName()
在访问某些域名时 getCanonicalHostName方法和getHostName方法的返回值是一样的 这和DNS服务器如何解释主机名和主机别名以及它们的设置有关 如通过创建InetAddress对象后 使用getCanonicalHostName方法和getHostName方法返回的结果都是(有时直接返回IP地址 这可能和IBM的DNS服务器的处理机制有关) 如果DNS不允许通过IP地址得到域名 那么这两个方法就会返回IP地址来代替域名 getCanonicalHostName方法可以分三种情况来讨论
使用getLocalHost创建InetAddress对象
在这种情况下getCanonicalHostName方法和getHostName方法得到的都是本机名
使用域名创建InetAddress对象
在这种情况下 getCanonicalHostName方法是否要访问DNS服务器 取决于DNS服务器如何解释主机名和主机别名 也就是说 是否在创建InetAddress对象时就将主机名和主机别名都确定了 在前面已经讲过 使用域名创建InetAddress对象后 调用getHostName方法不会访问DNS服务器 但getCanonicalHostName方法就不一定了 这和DNS服务器的设置有关 如就需要访问DNS服务器 而就不需要访问DNS服务器
使用IP地址创建InetAddress对象
在这种情况下 getCanonicalHostName方法和getHostName方法是完全一样的 也就是说 它们得到的都是主机名 而不是主机别名
之所以要使用主机别名 是因为有时主机名可能比较复杂 如Oracle官方网站的主机名bigip o 因此 为了使用户访问网站更方便 就增加了更简单的主机别名 如 一个主机名可能对应多个主机别名 如也是Oracle的主机别名 在IE的地址栏中输入和都可以访问Oracle官方网站 但我们发现 有很多网站通过主机名无法访问 只有通过一些别名才能访问 如 只能通过和两个主机别名访问 而不能通过它的主机名 cn来访问 这是因为在服务端通过HTTP协议做了限制 这个在前面已经讨论过了 例程 对比了getCanonicalHostName和getHostName方法在不同情况下的输出结果
package mynet;import *;public class DomainName public static void outHostName(InetAddress address String s) System out println( 通过 + s + 创建InetAddress对象 ); System out println( 主 机 名: + address getCanonicalHostName()); System out println( 主机别名: + address getHostName()); System out println( ); public static void main(String[] args) throws Exception outHostName(InetAddress getLocalHost() getLocalHost方法 ); outHostName(InetAddress getByName( ) ); outHostName(InetAddress getByName( ) ); outHostName(InetAddress getByName( ) ); outHostName(InetAddress getByName( ) );
运行结果
通过getLocalHost方法创建InetAddress对象主 机 名:ComputerName主机别名:ComputerName通过创建InetAddress对象主 机 名:主机别名:通过创建InetAddress对象主 机 名: cn主机别名:通过 创建InetAddress对象主 机 名: cn主机别名: cn通过 创建InetAddress对象主 机 名: 主机别名:
cha138/Article/program/Java/hx/201311/26659相关参考
空调主机包括什么,空调主机不动。空调主机是相对于空调末端或者室内机来说的。一般空调主机主要是指大型空调机组或者是多联机的室外机组。空调主机上有冷凝器、风机电机、压缩机、主机电控部件等等。空调主机包括风
获取规范的系统类型 下列的宏使得configure脚本可以获得系统类型它们运行shell脚本configguess以确定用户在命令行中没有给出的它们需要的关于主机目标和创建类型的所有值它们运行c
知识大全 我在主机屋上申请了免费虚拟主机,想上传网站代码,但我不知道我的主机IP地址是什么,怎么找
我在主机屋上申请了免费虚拟主机,想上传网站代码,但我不知道我的主机IP地址是什么,怎么找? 以下文字资料是由(本站网www.cha138.com)小编为大家搜集整理后发
虚拟主机非独立IP和虚拟主机独立IP有什么区别吗? 以下文字资料是由(本站网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!虚拟
知识大全 求目前3000元以下组装主机配置主要玩大型游戏。求高手帮帮忙 只需主机配置就行了
求目前3000元以下组装主机配置主要玩大型游戏。求高手帮帮忙只需主机配置就行了*CPUAMD速龙IIX2255(盒)¥400AMD新双核,AM3接口,主频3.1GHz集成2M二级缓存,超频方面表现都较
台式电脑萤幕与主机怎么连线第1步:首先检查电脑的外部接线是否接好,把各个连线重新插一遍,看故障是否排除。第2步:如果故障依旧,接着开启主机箱检视机箱内有无多余金属物,或主机板变形造成的短路,闻一下机箱
中央空调主机与风冷热泵机组有什么区别暖通空调专业基本上没有中央空调主机这一说法,因为中央空调系统很大,根据其组成不同有很多设备,通常都以其承担的任务来区分,而不是含糊地说中央空调主机。你所说的主机,可
电脑主机关机,手机插到usb充电会留下痕迹吗?主机都已关机了,手机插到主机usb接口上怎么可能还会充电呢电脑主机关机了usb电源还能充电吗不一定,如果主板支持键鼠开机,并且该功能没有关闭,则电脑关机但
怎么才能开启电脑主机放碟子的地方?1、开启我的电脑,找见DVD驱动器,右键选单弹出。就会自动弹出光碟机。2、在主机上,放光碟机的位置,有1个按钮,按下,主机光碟机就会自动弹出。3、在光碟机面板上,有个
知识大全 用一个虚拟机多拨 主机和这个虚拟机都不停拨号换ip 请问怎样可让主机与虚拟的ip不会有重复
用一个虚拟机多拨主机和这个虚拟机都不停拨号换ip请问怎样可让主机与虚拟的ip不会有重复?不可能,虚拟机用的网络和主机是一样的,所以公网IP是相同的,只是局域网IP不同而已。可以在虚拟机上换IP吗虚拟机