Java6提供了isUp()方法来检查网络接口是否启动并运行。
http://docs.oracle.com/javase/6/docs/api/java/net/NetworkInterface.html#isUp()
有没有办法在Java5中进行同样的检查呢?
发布于 2012-06-12 18:55:18
要查看是否有可用的资源,从NIC到数据库,再到世界另一端的Web服务器或月球,最好的方法就是尝试使用它。任何其他技术都容易出现计时问题,即当您测试时它处于启动状态,当您使用它时它处于关闭状态,或者相反。当您尝试使用它时,无论如何都必须处理失败的情况,因为它们通常是检查过的异常:为什么要两次编写相同的代码?
发布于 2012-06-12 16:51:36
如果您不介意使用外部库,请查看Sigar
您可以获取网络接口状态,其中包括接收的字节数或发送的字节数等统计数据。
唯一的退路是一个带有java绑定的C库,因此您需要在运行时为您的体系结构指定特定的版本
发布于 2022-03-03 10:36:13
类NetworkInterface有一个getInetAddresses()方法,提供InetAddress-es的枚举。假设每个适配器都支持IPv4,您将在这些适配器中找到一个Inet4Address。如果接口关闭,它将通过方法toString()发送"0.0.0.0“作为地址。如果适配器已启动但未链接(未分配动态地址),它将具有模式"169.x.x.x“的地址。
https://stackoverflow.com/questions/10993027
复制相似问题