网络相关辅助类NetUtils
package yqw.java.util;
import java.net.NetworkInterface;
import java.util.ArrayList;
import java.util.Enumeration;
import java.util.List;
/**
* 网络相关辅助类
*
*/
public class NetUtils {
/**
* 枚举所有网卡
*/
public static List<NetworkInterface> EnumNetworkInterfaces() {
try {
List<NetworkInterface> netList = new ArrayList<NetworkInterface>();
for (Enumeration<NetworkInterface> netEnum = NetworkInterface.getNetworkInterfaces(); netEnum
.hasMoreElements();) {
netList.add(netEnum.nextElement());
}
return netList;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
/**
* 获取本地网卡
*
* @return
*/
public static NetworkInterface getLoopBackNetWorkInterface() {
try {
if (NetworkInterface.getNetworkInterfaces() == null) {
return null;
}
for (Enumeration<NetworkInterface> netEnum = NetworkInterface.getNetworkInterfaces(); netEnum
.hasMoreElements();) {
NetworkInterface net = netEnum.nextElement();
if (net.isLoopback()) {
return net;
}
}
} catch (Exception e) {
e.printStackTrace();
return null;
}
return null;
}
/**
* 枚举所有物理网卡
*
*/
public static List<NetworkInterface> EnumPhysicalInterfaces() {
try {
List<NetworkInterface> netList = new ArrayList<NetworkInterface>();
if (NetworkInterface.getNetworkInterfaces() == null) {
return null;
}
for (Enumeration<NetworkInterface> netEnum = NetworkInterface.getNetworkInterfaces(); netEnum
.hasMoreElements();) {
NetworkInterface net = netEnum.nextElement();
if (net.isPointToPoint() || net.isVirtual() || net.isLoopback() || !net.isUp()) {
continue;
}
netList.add(net);
}
return netList;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
/**
* 获取第一个物理网卡
*/
public static NetworkInterface FirstPhysicalInterface() {
List<NetworkInterface> netList = EnumPhysicalInterfaces();
if (!CollectionUtils.IsAbsEmpty(netList)) {
return netList.get(0);
} else {
return null;
}
}
}
网络相关辅助类NetUtils的更多相关文章
- iOS网络相关知识总结
iOS网络相关知识总结 1.关于请求NSURLRequest? 我们经常讲的GET/POST/PUT等请求是指我们要向服务器发出的NSMutableURLRequest的类型; 我们可以设置Reque ...
- 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误
在visual studio 中添加数据库应用时,报错,提示如下: 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误.未找到或无法访问服务器.请验证实例名称是否正确并且 SQL ...
- 在与SQL Server建立连接时出现于网络相关的或特定于实例的错误
客户遇到一个问题,用“服务器名\实例名”远程连接另外一台命名实例的时候连接失败,报“在与SQL Server建立连接时出现于网络相关的或特定于实例的错误,未找到或无法访问服务器.请验证实例名称是否正确 ...
- linux网络相关配置文件
linux系统一般来说分为两大类:1.RedHat系列:Redhat.Centos.Fedora等:2.Debian系列:Debian.Ubuntu等. linux系统中,TCP/IP网络是通过若干个 ...
- iOS网络相关零散知识总结
iOS网络相关零散知识总结 1. URL和HTTP知识 (1) URL的全称是Uniform Resource Locator(统一资源定位符). URL的基本格式 = 协议://主机地址/路径 ...
- 与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。
今天同学请教我数据库为什么打不开了,打开SQL Server 2008 的 SQL Server Management Studio,输入sa的密码发现,无法登陆数据库?提示以下错误: "在 ...
- Linux 网络编程基础(1)--网络相关的数据结构及转化函数
在Linux下进行网络编程,使用的语言一般为C.就个人感受而言,在Linux下进行网络程序的编写,重要的不是代码能力要多强,而是对Linux的网络编程思想的理解和对Linux网络数据结构的掌握.如果想 ...
- Android 开源项目android-open-project工具库解析之(一) 依赖注入,图片缓存,网络相关,数据库orm工具包,Android公共库
一.依赖注入DI 通过依赖注入降低View.服务.资源简化初始化.事件绑定等反复繁琐工作 AndroidAnnotations(Code Diet) android高速开发框架 项目地址:https: ...
- 不错的C++框架: Thrift(2)-传输和网络相关
不错的C++框架: Thrift(2)-传输和网络相关 - ang639 - 博客频道 - CSDN.NET 不错的C++框架: Thrift(2)-传输和网络相关
随机推荐
- hbase 查看hfile文件
emp表数据结构 hbase(main):098:0> scan 'emp' ROW COLUMN+CELL row1 column=mycf:depart, timestamp=1555846 ...
- [转帖]RSA算法与DSA算法的区别
RSA算法与DSA算法的区别 https://cloud.tencent.com/developer/news/254061 文章来源:企鹅号 - SuperFullStack 本文译自:StackE ...
- 小记----采集之Xpath
一.XPATH简介 Xpath是XML路径语言,它是一种确定XML文档中某部分位置的语言 二.XPATH语法 XPATH使用路径表达式在XML文档中选取节点.节点是通过沿着路径或者step来选取 ...
- Elasticsearch操作索引
目录 操作索引 1. 基本概念 2. 创建索引 2.1 语法 2.2查看索引设置 2.3.删除索引 2.4 映射配置 2.5 新增数据 2.6 修改数据 2.7 删除数据 3. 查询 3.1 基本查询 ...
- sqlserver2008 批量导出所有的作业
SQl server 代理 -- 选中作业 -- 按 F7,弹出 对象资源管理详细信息 ,里面对作业多选以后右键就有导出 sql的菜单了
- 单点登录之ajax跨域实现
需求:相同根域名或不同根域名的两个域名,实现单点登录登出 原理: 以b站为例,b站的账号登录域名为passport.bilibili.com.主站为www.bilibili.com,游戏站为www.b ...
- iconv - 字符集转换
总览 (SYNOPSIS) iconv [-f encoding] [-t encoding] [inputfile ...] 描述 (DESCRIPTION) iconv 程序 把 文本 从 一种 ...
- spring容器启动完成后加载自定义逻辑
业务需求中,可能会有一些逻辑需要在应用启动完成后,例如字典缓存,资源池初始化等等,代码如下 public class InitApplication implements ApplicationCon ...
- Linux man学习
5 man man是manual的简写,Linux求助的工具 man 命令行,如 man date 在我学习鸟哥私房菜的时候,也称man为man page 手册页入口:1 用户指令2 ...
- (转) 修改weblogic部署的应用名称
通过weblogic管理后台console进行发布本地项目的时候,它会默认以WEB-INF的上一级目录作为访问路径, 如,假如你的项目WEB-INF目录的上一层是WebRoot,那么发布后, 访问的路 ...