Hutool 是一个小而全的Java工具类库,一个Java基础工具类,对文件、流、加密解密、转码、正则、线程、XML等JDK方法进行封装,组成各种Util工具类。
Oshi是Java的免费基于JNA的操作系统和硬件信息库,Github地址是:https://github.com/oshi/oshi
它的优点是不需要安装任何其他本机库,并且旨在提供一种跨平台的实现来检索系统信息,例如操作系统版本,进程,内存和CPU使用率,磁盘和分区,设备,传感器等。

  • 在项目的pom.xml的dependencies中加入以下内容:
<dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.7.8</version>
</dependency>
  • 引入Oshi库,Oshi是Java的免费基于JNA的操作系统和硬件信息库
<dependency><groupId>com.github.oshi</groupId><artifactId>oshi-core</artifactId><version>5.6.1</version>
</dependency>

下面是代码,就会很简单了


public class Test {public static void main(String[] args) {//获取cpu利用率getOsInfo();//获取内存数据getMemoryInfo();//获取硬盘使用量getDiskUsed();}/*** 获取cpu利用率*/public static void getOsInfo(){CpuInfo cpuInfo = OshiUtil.getCpuInfo();double free = cpuInfo.getFree();DecimalFormat format = new DecimalFormat("#.00");System.out.println("cpu利用率:" + Double.parseDouble(format.format(100.0D - free)));}/*** 获取内存数据*/public static void getMemoryInfo(){System.out.println("内存总量:" + OshiUtil.getMemory().getTotal()/1024/1024);System.out.println("已用内存:" + OshiUtil.getMemory().getAvailable()/1024/1024);}/*** 获取硬盘使用量*/public static void getDiskUsed(){File win = new File("/");if (win.exists()) {long total = win.getTotalSpace();long freeSpace = win.getFreeSpace();System.out.println("磁盘总量:" + total/1024/1024/1024);System.out.println("磁盘剩余总量:" + freeSpace/1024/1024/1024);System.out.println("磁盘已用总量:" + (total - freeSpace)/1024/1024/1024);}}
}

输出结果如下:

cpu利用率:9.58
内存总量:15790
已用内存:6154
磁盘总量:375
磁盘剩余总量:95
磁盘已用总量:280

这个库可以监测的内容包括:

  1. 计算机系统和固件,底板
  2. 操作系统和版本/内部版本
  3. 物理(核心)和逻辑(超线程)CPU,处理器组,NUMA节点
  4. 系统和每个处理器的负载百分比和滴答计数器
  5. CPU正常运行时间,进程和线程
  6. 进程正常运行时间,CPU,内存使用率,用户/组,命令行
  7. 已使用/可用的物理和虚拟内存
  8. 挂载的文件系统(类型,可用空间和总空间)
  9. 磁盘驱动器(型号,序列号,大小)和分区
  10. 网络接口(IP,带宽输入/输出)
  11. 电池状态(电量百分比,剩余时间,电量使用情况统计信息)
  12. 连接的显示器(带有EDID信息)
  13. USB设备
  14. 传感器(温度,风扇速度,电压)

没错!也就是说配合一个前端界面,完全可以搞定系统监控了。

通过HuTool工具类和oshi查询cpu使用率、内存大小、磁盘空间等相关推荐

  1. CentOS 7 查询CPU、内存、磁盘的使用情况

    本篇介绍记录一下CentOS 7 查询CPU型号.CPU核心.CPU详情.内存占用.磁盘使用情况 查看CPU型号 dmidecode -s processor-version (base) [root ...

  2. Linux服务器CPU、内存、磁盘空间、负载情况查看python脚本

    [本文出自天外归云的博客园] 网上搜,东拼西凑,组装了一个可以查Linux服务器CPU使用率.内存使用率.磁盘空间占用率.负载情况的python脚本. 脚本内容如下: # -*- coding:utf ...

  3. Linux下查看CPU型号,内存大小,硬盘空间的命令(详解)

    1 查看CPU 1.1 查看CPU个数*核心数 cat /proc/cpuinfo | grep "physical id" | uniq | wc -l 96 #一共96核 2 ...

  4. Linux命令-查看CPU型号,内存大小,硬盘空间

    1 查看CPU 1.1 查看CPU个数 # cat /proc/cpuinfo | grep "physical id" | uniq | wc -l 4 **uniq命令:删除重 ...

  5. 数据对接利用hutool工具类进行xml解析,xml转换成map,然后进行数据入库

    数据对接xml解析 <ESBEntry><!--通过MB对请求进行权限验证,验证后将删除AccessControl节点 --><AccessControl>< ...

  6. 利用hutool工具类导出Excel

    简单介绍 可以使用hutool工具类,简单的生成Excel.本质上还是使用的POI组件,只是对其进行了封装,避免开发人员重复造轮子 hutool工具类链接 maven导入 <!-- hutool ...

  7. 使用hutool工具类,计算日期差

    需求: 参数: 计划日期,实际日期 返回: 超时or提前,天数 hutool工具类 <dependency><groupId>cn.hutool</groupId> ...

  8. java基于HuTool工具类ExcelWriter合并单元格

    ** java基于HuTool工具类ExcelWriter合并单元格 ** 1.基于HuTool工具类ExcelWriter合并单元格并且使用 jdk1.8 lambda表达式 效果如下: 用姓名和编 ...

  9. 用hutool工具类导出excel

    工作上有一个导出数据的需求,发现用hutool工具类可以非常简洁快捷的生成excel导出. 前期准备 引入hutool的依赖: <dependency><groupId>cn. ...

最新文章

  1. android HTTP发送及MD5加密收集
  2. 学python需要什么基础知识-Python学习(一)基础知识
  3. 从LXMERT到VLMO:多模态预训练模型的演变史
  4. oracle排序使用,很多中函数,不同的效果
  5. QT开发(十)——QT输入组件
  6. Java EE,Gradle和集成测试
  7. Python基于用户协同过滤算法的电影推荐代码demo
  8. 苹果华人工程师被捕后续,按“商业间谍”指控,本人不认罪
  9. 【一分钟论文】轻松解读Semi-supervised Sequence Learning半监督序列学习
  10. gin -get请求的小示例2-Handle处理post请求
  11. flash倒计时制作
  12. np.sum和np.add.reduce
  13. 《国际学术论文写作与发表》课后题
  14. @Resource报错
  15. Python全年天数查询源代码
  16. (PTA)数据结构(作业)6、队列
  17. 如何剪辑视频,视频画中画制作教程分享
  18. 沃尔玛中国前CEO陈文渊将出任百事亚太区CEO;山姆再次下调近百种畅销单品价格 | 美通企业日报...
  19. 7、【STM32】独立看门狗和窗口看门狗(IWDG、WWDG)实验
  20. 详解GCC的下载和安装

热门文章

  1. 网络接入技术及其特点
  2. ipvsadm 命令
  3. Hydra(暴力破解工具)参数
  4. element-ui 的confirm用法
  5. CSS/CSS3语法新特性笔记
  6. cadence画原理图的时候,元件PIN上出现黄色感叹号Object move not completed as this resulted in connectivity changes
  7. 黑苹果MacOS Big Sur 11-10.16正式发布,支持Intel和AMD处理器,Clover OpenCore两大引导,系统高速下载!
  8. MFC使摄像头录像在picture中显示时常出现崩溃问题
  9. 第十届蓝桥杯国赛java_2019年第十届蓝桥杯国赛总结(JavaA组)
  10. 武汉东方y神话服饰有限公司