仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 414|回复: 8
打印 上一主题 下一主题

[学习教程] 了解下JAVA的怎样利用Java测试收集连通性

[复制链接]
变相怪杰 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:02:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
市场分额,java比asp高一点,因为C#是仿照java开发的,所以哦C#能做的java都能做到,但是java能做的,C#不一定都能做到。毕竟是抄袭吗。
概述
在收集编程中,偶然我们必要判别两台呆板之间的连通性,大概说是一台呆板到另外一台呆板的收集可达性。在体系层面的测试中,我们经常用Ping命令来做考证。只管Java供应了对照丰厚的收集编程类库(包含在使用层的基于URL的网络资本读取,基于TCP/IP层的Socket编程,和一些帮助的类库),可是没有间接供应相似Ping命令来测试收集连通性的办法。本文将先容怎样经由过程Java已有的API,编程完成各类场景下两台呆板之间的收集可达性判别。鄙人面的章节中,我们会利用Java收集编程的一些类库java.net.InetAddress和java.net.Socket,经由过程例子注释怎样摹拟Ping命令。
复杂判别两台呆板的可达性
一样平常情形下,我们仅仅必要判别从一台呆板是不是能够会见(Ping)到另外一台机器,此时,能够复杂的利用Java类库中java.net.InetAddress类来完成,这个类供应了两个办法探测远程呆板是不是可达
booleanisReachable(inttimeout)//测试地点是不是可达
booleanisReachable(NetworkInterfacenetif,intttl,inttimeout)
//测试地点是不是可达.
复杂说来,上述办法就是经由过程远端呆板的IP地点构造InetAddress对象,然后挪用其isReachable办法,测试挪用呆板和远端呆板的收集可达性。注重到远端呆板大概有多个IP地点,因此大概要迭代的测试一切的情形。
清单1:复杂判别两台呆板的可达性
  1. voidisAddressAvailable(Stringip){
  2. try{
  3. InetAddressaddress=InetAddress.getByName(ip);//pingthisIP
  4. if(addressinstanceofjava.net.Inet4Address){
  5. System.out.println(ip+"isipv4address");
  6. }else
  7. if(addressinstanceofjava.net.Inet6Address){
  8. System.out.println(ip+"isipv6address");
  9. }else{
  10. System.out.println(ip+"isunrecongized");
  11. }
  12. if(address.isReachable(5000)){
  13. System.out.println("SUCCESS-ping"+IP+"withnointerfacespecified");
  14. }else{
  15. System.out.println("FAILURE-ping"+IP+"withnointerfacespecified");
  16. }
  17. System.out.println("
  18. -------Tryingdifferentinterfaces--------
  19. ");
  20. Enumeration<NetworkInterface>netInterfaces=
  21. NetworkInterface.getNetworkInterfaces();
  22. while(netInterfaces.hasMoreElements()){
  23. NetworkInterfaceni=netInterfaces.nextElement();
  24. System.out.println(
  25. "Checkinginterface,DisplayName:"+ni.getDisplayName()+",Name:"+ni.getName());
  26. if(address.isReachable(ni,0,5000)){
  27. System.out.println("SUCCESS-ping"+ip);
  28. }else{
  29. System.out.println("FAILURE-ping"+ip);
  30. }
  31. Enumeration<InetAddress>ips=ni.getInetAddresses();
  32. while(ips.hasMoreElements()){
  33. System.out.println("IP:"+ips.nextElement().getHostAddress());
  34. }
  35. System.out.println("-------------------------------------------");
  36. }
  37. }catch(Exceptione){
  38. System.out.println("erroroccurs.");
  39. e.printStackTrace();
  40. }
  41. }
复制代码
程序输入
  1. --------------START--------------
  2. 10.13.20.70isipv4address
  3. SUCCESS-ping10.13.20.70withnointerfacespecified
  4. -------Tryingdifferentinterfaces--------
  5. Checkinginterface,DisplayName:MSTCPLoopbackinterface,Name:lo
  6. FAILURE-ping10.13.20.70
  7. IP:127.0.0.1
  8. -------------------------------------------
  9. Checkinginterface,DisplayName:Intel(R)Centrino(R)Advanced-N6200AGN-
  10. Teefer2Miniport,Name:eth0
  11. FAILURE-ping10.13.20.70
  12. IP:9.123.231.40
  13. -------------------------------------------
  14. Checkinginterface,DisplayName:Intel(R)82577LMGigabitNetworkConnection-
  15. Teefer2Miniport,Name:eth1
  16. SUCCESS-ping10.13.20.70
  17. -------------------------------------------
  18. Checkinginterface,DisplayName:WAN(PPP/SLIP)Interface,Name:ppp0
  19. SUCCESS-ping10.13.20.70
  20. IP:10.0.50.189
  21. -------------------------------------------
  22. --------------END--------------
复制代码
<p>
Java到底会发战成什么样,让我们拭目以待吧,我始终坚信着java会更好。以上都是俺个人看法,欢迎大家一起交流.
小女巫 该用户已被删除
沙发
发表于 2015-1-20 12:55:25 | 只看该作者
是一种为 Internet发展的计算机语言
admin 该用户已被删除
板凳
发表于 2015-1-27 08:25:35 | 只看该作者
一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。
愤怒的大鸟 该用户已被删除
地板
发表于 2015-2-5 03:04:36 | 只看该作者
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言
冷月葬花魂 该用户已被删除
5#
发表于 2015-2-11 02:35:12 | 只看该作者
Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)
因胸联盟 该用户已被删除
6#
发表于 2015-3-1 19:41:45 | 只看该作者
其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。
飘灵儿 该用户已被删除
7#
发表于 2015-3-10 22:38:22 | 只看该作者
Java是一种计算机编程语言,拥有跨平台、面向对java
谁可相欹 该用户已被删除
8#
发表于 2015-3-17 11:37:41 | 只看该作者
你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。
柔情似水 该用户已被删除
9#
发表于 2015-3-24 09:15:52 | 只看该作者
Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-9-28 19:24

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表