java 获取cpu_Java实现获取cpu、内存、硬盘、网络等信息的方法示例

本文实例讲述了Java实现获取cpu、内存、硬盘、网络等信息的方法。分享给大家供大家参考,具体如下:

1. 下载安装sigar-1.6.4.zip

使用java自带的包获取系统数据,容易找不到包,尤其是内存信息不够准确,所以选择使用sigar获取系统信息。

或点击此处本站下载。

解压压缩包,将lib下sigar.jar导入eclipse的CLASSPATH中,再将sigar-x86-winnt.dll存入Java的bin目录即可。

如下图所示:

5d0b50ff817adbea8f05b36897e3d031.png

7f176495d6d011ea02bf71a647ea4a39.png

2. 代码示例

import java.net.InetAddress;

import java.net.UnknownHostException;

import java.util.Map;

import java.util.Properties;

import org.hyperic.sigar.CpuInfo;

import org.hyperic.sigar.CpuPerc;

import org.hyperic.sigar.FileSystem;

import org.hyperic.sigar.FileSystemUsage;

import org.hyperic.sigar.Mem;

import org.hyperic.sigar.NetFlags;

import org.hyperic.sigar.NetInterfaceConfig;

import org.hyperic.sigar.NetInterfaceStat;

import org.hyperic.sigar.OperatingSystem;

import org.hyperic.sigar.Sigar;

import org.hyperic.sigar.SigarException;

import org.hyperic.sigar.Swap;

import org.hyperic.sigar.Who;

public class RuntimeTest {

public static void main(String[] args) {

try {

// System信息,从jvm获取

property();

System.out.println("----------------------------------");

// cpu信息

cpu();

System.out.println("----------------------------------");

// 内存信息

memory();

System.out.println("----------------------------------");

// 操作系统信息

os();

System.out.println("----------------------------------");

// 用户信息

who();

System.out.println("----------------------------------");

// 文件系统信息

file();

System.out.println("----------------------------------");

// 网络信息

net();

System.out.println("----------------------------------");

// 以太网信息

ethernet();

System.out.println("----------------------------------");

} catch (Exception e1) {

e1.printStackTrace();

}

}

private static void property() throws UnknownHostException {

Runtime r = Runtime.getRuntime();

Properties props = System.getProperties();

InetAddress addr;

addr = InetAddress.getLocalHost();

String ip = addr.getHostAddress();

Map map = System.getenv();

String userName = map.get("USERNAME");// 获取用户名

String computerName = map.get("COMPUTERNAME");// 获取计算机名

String userDomain = map.get("USERDOMAIN");// 获取计算机域名

System.out.println("用户名: " + userName);

System.out.println("计算机名: " + computerName);

System.out.println("计算机域名: " + userDomain);

System.out.println("本地ip地址: " + ip);

System.out.println("本地主机名: " + addr.getHostName());

System.out.println("JVM可以使用的总内存: " + r.totalMemory());

System.out.println("JVM可以使用的剩余内存: " + r.freeMemory());

System.out.println("JVM可以使用的处理器个数: " + r.availableProcessors());

System.out.println("Java的运行环境版本: " + props.getProperty("java.version"));

System.out.println("Java的运行环境供应商: " + props.getProperty("java.vendor"));

System.out.println("Java供应商的URL: " + props.getProperty("java.vendor.url"));

System.out.println("Java的安装路径: " + props.getProperty("java.home"));

System.out.println("Java的虚拟机规范版本: " + props.getProperty("java.vm.specification.version"));

System.out.println("Java的虚拟机规范供应商: " + props.getProperty("java.vm.specification.vendor"));

System.out.println("Java的虚拟机规范名称: " + props.getProperty("java.vm.specification.name"));

System.out.println("Java的虚拟机实现版本: " + props.getProperty("java.vm.version"));

System.out.println("Java的虚拟机实现供应商: " + props.getProperty("java.vm.vendor"));

System.out.println("Java的虚拟机实现名称: " + props.getProperty("java.vm.name"));

System.out.println("Java运行时环境规范版本: " + props.getProperty("java.specification.version"));

System.out.println("Java运行时环境规范供应商: " + props.getProperty("java.specification.vender"));

System.out.println("Java运行时环境规范名称: " + props.getProperty("java.specification.name"));

System.out.println("Java的类格式版本号: " + props.getProperty("java.class.version"));

System.out.println(&#

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值