java获取linux系统服务器ip地址问题。(大神请进) 机器上有多块网卡,会显示多个ip地址。。这个只能根据网段来判断那个是你需要的ip 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 NetworkInterface调用getDisplayName方法显示网卡名称判定是服务器使用的网卡名,则区其IP地址 试试这个代码 import java.net.InterfaceAddress;import java.net.NetworkInterface;import java.net.SocketException;import java.util.Enumeration;import java.util.Iterator;import java.util.List;/** * @author suzhw<br> * 日期:2014-10-14<br> * 功能:根据启动并运行的网卡名称,找到本机实际的IP地址(已知当前运行的无线网卡名包含“wireless”字段)<br> * 版权:版权所有(C) 2014,suzhw<br> * @version v0.1 * @see */public class ToGetLocalLinkIP2 { public static void main(String[] args) throws Exception { Enumeration<NetworkInterface> en = NetworkInterface .getNetworkInterfaces(); while (en.hasMoreElements()) { NetworkInterface ni = en.nextElement(); printParameter(ni); } } public static void printParameter(NetworkInterface ni) throws SocketException { if (null != ni.getDisplayName() && ni.getDisplayName().contains("Wireless") && ni.isUp()) { System.out.println(" Name = " + ni.getName()); System.out.println(" Display Name = " + ni.getDisplayName()); System.out.println(" Is up = " + ni.isUp()); System.out .println(" Support multicast = " + ni.supportsMulticast()); System.out.println(" Is loopback = " + ni.isLoopback()); System.out.println(" Is virtual = " + ni.isVirtual()); System.out.println(" Is point to point = " + ni.isPointToPoint()); System.out .println(" Hardware address = " + ni.getHardwareAddress()); System.out.println(" MTU = " + ni.getMTU()); System.out.println("\nList of Interface Addresses:"); List<InterfaceAddress> list = ni.getInterfaceAddresses(); Iterator<InterfaceAddress> it = list.iterator(); while (it.hasNext()) { InterfaceAddress ia = it.next(); if(null!=ia.getBroadcast()){ System.out.println(" 本机实际联网网卡IPv4地址: " + ia.getAddress().getHostAddress()); } } System.out .println("**************************************************"); } }} 最近想用JAVA参加一个科技竞赛,各位给点意见 requeset.getAttribute()可以获取url参数吗? 用JDBC连接SQL Server2005时出现以下异常: SQL Server 登录需要 SSL 连接。 新手请教struts2的标签问题,急~~~ 请教高手一个TOMCAT启动的问题--棘手 老调重弹-怎样选择开源免费数据库 hibernate操作视图的空指针问题 eclipse配置tomcat问题 cmp管理的EJB查询语言问题 java 程序 用高德地图API 通过详细地址获得经纬度 选择时间点击查询显示曲线图 logback+SLF4J 没打印日志
import java.net.NetworkInterface;
import java.net.SocketException;
import java.util.Enumeration;
import java.util.Iterator;
import java.util.List;/**
* @author suzhw<br>
* 日期:2014-10-14<br>
* 功能:根据启动并运行的网卡名称,找到本机实际的IP地址(已知当前运行的无线网卡名包含“wireless”字段)<br>
* 版权:版权所有(C) 2014,suzhw<br>
* @version v0.1
* @see
*/
public class ToGetLocalLinkIP2 {
public static void main(String[] args) throws Exception {
Enumeration<NetworkInterface> en = NetworkInterface
.getNetworkInterfaces();
while (en.hasMoreElements()) {
NetworkInterface ni = en.nextElement();
printParameter(ni); }
} public static void printParameter(NetworkInterface ni)
throws SocketException {
if (null != ni.getDisplayName()
&& ni.getDisplayName().contains("Wireless") && ni.isUp()) {
System.out.println(" Name = " + ni.getName());
System.out.println(" Display Name = " + ni.getDisplayName());
System.out.println(" Is up = " + ni.isUp());
System.out
.println(" Support multicast = " + ni.supportsMulticast());
System.out.println(" Is loopback = " + ni.isLoopback());
System.out.println(" Is virtual = " + ni.isVirtual());
System.out.println(" Is point to point = " + ni.isPointToPoint());
System.out
.println(" Hardware address = " + ni.getHardwareAddress());
System.out.println(" MTU = " + ni.getMTU()); System.out.println("\nList of Interface Addresses:");
List<InterfaceAddress> list = ni.getInterfaceAddresses();
Iterator<InterfaceAddress> it = list.iterator(); while (it.hasNext()) {
InterfaceAddress ia = it.next();
if(null!=ia.getBroadcast()){
System.out.println(" 本机实际联网网卡IPv4地址: " + ia.getAddress().getHostAddress());
}
} System.out
.println("**************************************************");
}
}
}