request.getRemoteHost()
获取到IP地址了,而不是机器名。
这个是否跟浏览器权限有关呢?我是需要记录哪台机器登陆了系统,同时记下IP和机器名称,现在只能获得IP。

解决方案 »

  1.   

    String hostname = InetAddress.getLocalHost().getHostName();
      

  2.   

    request.getRemoteHost() 得到字符串转化byte[],然后用InetAddress.getByAddress(byte[] add)方法得到InetAddress 对象,注意的是String 转化byte[] 需考虑字节范围,从-127-127 。利用InetAddress.getHostName()得到主机名。
      

  3.   

    sorket.getInetAddress().getHostName();
    public String getHostName()获取此 IP 地址的主机名。 
    如果此 InetAddress 是用主机名创建的,则记忆并返回主机名;否则,将执行反向名称查找并基于系统配置的名称查找服务返回结果。如果需要查找名称服务,则调用 getCanonicalHostName。 如果有安全管理器,则首先使用主机名和 -1 作为参数来调用其 checkConnect 方法,以查看是否允许该操作。如果不允许该操作,则其返回 IP 地址的文本表示形式。 
    返回:
    此 IP 地址的主机名;如果安全检查不允许操作,则返回 IP 地址的文本表示形式。/////////////////////////////////////////////////////////////////////////////
    getHostAddress
    public String getHostAddress()返回 IP 地址字符串(以文本表现形式)。 返回:
    字符串格式的原始 IP 地址。
      

  4.   

    对不起,没看题,你是在jsp中阿。