微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

测试IP是否连通的方法1

  1. /** 
  2.      * 测试IP是否连通 Author zyx Date 2012-04-18 
  3.      *  
  4.      * @param host 
  5.      * @return 
  6.      */  
  7.     private boolean testHost(Map<String, String> props) {  
  8.         boolean status = false;  
  9.         // 设置验证IP连通延迟时间  
  10.         int timeout = 3000;  
  11.         String url = props.get("url");  
  12.         String dbtype = (String) Globals.SYS_DB_TYPE.get(props.get("name"));  
  13.         String host = "";  
  14.         // 从url中截取IP连接地址 这里的截取方法 仅支持oracle sqlserver MysqL DB2 不支持sybase  
  15.         // 如果是oracle数据库  
  16.         if ("1".equals(dbtype)) {  
  17.             if(url != null && !"".equals(url) && url.indexOf("@") > 0)  
  18.             host = url.substring(url.indexOf("@") + 1, url.indexOf(":", url.indexOf("@")));  
  19.         } else { // 其他数据库  
  20.             if(url != null && !"".equals(url) && url.indexOf("//") > 0)  
  21.             host = url.substring(url.indexOf("//") + 2, url.indexOf("//")));  
  22.         }  
  23.   
  24.         try {  
  25.             if (InetAddress.getByName(host).isReachable(timeout)) {  
  26.                 logger.info("IP: " + host + " 正常连接");  
  27.                 status = true;  
  28.             } else {  
  29.                 logger.info("IP: " + host + " 无法连接");  
  30.                 status = false;  
  31.             }  
  32.         } catch (UnkNownHostException e) {  
  33.             logger.info(host + "是非法的地址");  
  34.             e.printstacktrace();  
  35.         } catch (IOException e) {  
  36.             e.printstacktrace();  
  37.         } 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐