import org.apache.commons.httpclient.methods.GetMethod;
import org.apache.commons.httpclient.HttpClient;
import org.apache.log4j.Logger;
import java.net.InetAddress;
import java.util.Enumeration;
import java.net.NetworkInterface;
import java.util.*;
public class TestGetMacAddr {
static Logger logger = Logger.getLogger(TestGetMacAddr.class);
public TestGetMacAddr() {
}
/**
*
* @param url String
* @return int
* @throws Exception
*/
public static int clickURL(String url) throws Exception {
int retrycount = 3;
while (true) {
HttpClient httpClient = new HttpClient();
GetMethod get = new GetMethod(url);
get.addRequestHeader("Content-Type", "text/html; charset=GBK");
int code = httpClient.executeMethod(get);
if (code != 200) {
if (retrycount == 0) {
throw new Exception("发送失败,失败原因=" + code);
}
logger.error("send to[" + url + "]error code[" + code + "]");
retrycount--;
}
else {
return code;
}
} //end while(true)...
}
/**
*
* @return Collection
*/
public static Collection getAllLocalIP() throws Exception {
ArrayList ar = new ArrayList();
Enumeration netInterfaces = NetworkInterface.getNetworkInterfaces();
while (netInterfaces.hasMoreElements()) {
NetworkInterface ni = (NetworkInterface) netInterfaces.nextElement();
InetAddress ip = (InetAddress) ni.getInetAddresses().nextElement();
if (!ip.isSiteLocalAddress() && !ip.isLoopbackAddress() &&
ip.getHostAddress().indexOf(":") == -1) {
System.out.println("Interface " + ni.getName() +
" seems to be InternetInterface. I'll take it..."); ;
}
else {
ar.add(ip.getHostAddress());
}
}
return ar;
}
public static void main(String[] args) {
try {
Collection col = TestGetMacAddr.getAllLocalIP();
Iterator it = col.iterator();
while (it.hasNext()){
System.out.println(it.next());
}
}
catch (Exception ex) {
ex.printStackTrace();
}
}
}
分享到:
相关推荐
这个IP地址是动态的,也可能固定不变,取决于ISP的服务类型。要获取这个公网IP,我们可以通过向特定的HTTP服务发起请求,这些服务会返回请求发出的公网IP。 在Java中,我们可以创建一个类来实现这个功能。例如,`...
Java作为一种广泛应用的编程语言,在处理IP地址匹配时提供了多种方法与技术,以确保网络通信的安全与高效。本文将围绕“Java常用IP匹配”这一主题,深入探讨IP地址的基本概念、正则表达式在IP匹配中的应用,以及如何...
在Java编程中,根据IP地址获取国家和地区名称是一项常见的需求,尤其在网站分析、网络安全或者地理定位服务中。实现这一功能通常需要借助IP数据库或API服务。本篇将详细讲解如何在Java中根据IP地址获取国家和地区...
// 如果是多个 IP 地址,则取第一个作为真实 IP if (ip != null && ip.indexOf(",") > 0) { ip = ip.split(",")[0]; } return ip; } ``` 在这个方法中,我们首先尝试从 `X-Forwarded-For` 请求头中获取 IP ...
在Java编程环境中,获取本机的IP地址和MAC地址是一项常见的需求,特别是在网络通信和设备识别的场景下。本文将详细讲解如何通过Java代码来获取本机正在使用的IP地址(包括IPv4和IPv6)以及MAC地址,并排除虚拟机的IP...
在Java编程中,根据IP地址获取地理位置是一项常见的需求,尤其在大数据分析、用户行为追踪或者安全防护等场景中。本文将介绍如何利用新浪和淘宝的API接口来实现这一功能。 首先,我们来看新浪的接口实现。新浪提供...
非常清楚的介绍了如何使用Java获取本机IP地址,有源码
在 Java 中,我们可以使用 InetAddress 类的 getLocalHost() 方法来获取本地主机的 IP 地址。这个方法将返回一个 InetAddress 对象,其中包含了主机的 IP 地址。 ```java InetAddress myIPaddress = InetAddress....
获取用户请求IP地址 根据IP地址获取mac地址
以下是如何在IntelliJ IDEA中使用Java和Servlet来获取用户IP的方法: 1. **配置Servlet**:首先,在IntelliJ IDEA中创建一个Java Web项目,然后添加Servlet类。继承`javax.servlet.http.HttpServlet`,并在`doGet`...
Java是一种广泛使用的编程语言,以其跨平台性、面向对象和丰富的库支持而闻名,因此选择Java来开发IP管理工具是一个常见的选择。 IPMsg(IP Message)通常指的是IP Messenger,一种用于局域网内通信的应用程序,...
Java根据本地IP获取MAC地址的方法 Java根据本地IP获取MAC地址的方法是指通过Java语言获取本机或客户端的MAC地址。MAC地址是媒体访问控制地址,是网络设备的唯一标识符。在Java中,可以使用InetAddress和Network...
如果用户通过代理服务器访问,`X-Forwarded-For`头可能会有多个IP,这时需要处理好代理链,一般取第一个非代理IP作为客户端真实IP。 3. **获取IP归属地** 获取IP归属地通常需要借助第三方的服务或者数据库,比如...
这个IP地址可能是IPv4或IPv6格式,具体取决于系统的配置。 3. **获取MAC地址**:在Java中,直接获取MAC(物理)地址相对复杂,因为这涉及到操作系统级别的硬件信息。通常,可以通过`java.net.NetworkInterface`类来...
以上三种方法各有优缺点,选择哪种取决于具体项目需求,如性能、隐私保护、成本和易用性等因素。在实际应用中,还需要考虑错误处理、缓存策略以及API调用频率限制等问题,以确保服务的稳定性和效率。 总之,要在...
要获取本机的IP地址,可以使用`java.net.InetAddress`类的`getLocalHost()`方法。这个方法会返回与本地主机相关的`InetAddress`对象,包含了主机名和IP地址。在给出的代码中,创建了一个名为`NetTool`的类,其中`get...
在Java编程中,获取IP...Java获取IP地址的方法多样,具体选择哪种取决于你的应用场景。在实际项目中,还需要考虑IPv4与IPv6的兼容性、网络环境的复杂性等因素。理解这些基础知识对于编写健壮的网络应用程序至关重要。
在Java编程中,IP地址与十进制数之间的转换是一个常见的需求,特别是在网络...但是,这些方法不直接支持IP地址与十进制数之间的转换,而是依赖于网络解析功能,所以如果只是需要简单的转换,自定义函数更为直接有效。
本篇将深入讲解如何使用Java语言调用大华摄像头,并实现连接与播放功能。 首先,我们要了解大华摄像头提供的API。大华摄像头通常提供SDK(Software Development Kit),其中包括了必要的库文件和文档,帮助开发者...
Java波浪文字制作方法及源代码 1个目标文件 摘要:Java源码,初学实例,波浪文字 Java波浪文字,一个利用Java处理字符的实例,可以设置运动方向参数,显示文本的字符数组,高速文本颜色,显示字体的 FontMetrics对象...