Hutool Hutool
(opens new window)
🏡首页
📖指南
  • 核心(Hutool-core)
  • 配置文件(Hutool-setting)
  • 日志(Hutool-log)
  • 缓存(Hutool-cache)
  • JSON(Hutool-json)
  • 加密解密(Hutool-crypto)
  • DFA查找(Hutool-dfa)
  • 数据库(Hutool-db)
  • HTTP客户端(Hutool-http)
  • 定时任务(Hutool-cron)
  • 扩展(Hutool-extra)
  • 布隆过滤(Hutool-bloomFilter)
  • 切面(Hutool-aop)
  • 脚本(Hutool-script)
  • Office文档操作(Hutool-poi)
  • 系统调用(Hutool-system)
  • 图形验证码(Hutool-captcha)
  • 网络Socket(Hutool-socket)
  • JWT(Hutool-jwt)
💡javaDoc (opens new window)
⏳更新记录 (opens new window)
  • 🍎gitee (opens new window)
  • 🍏github (opens new window)
(opens new window)
🏡首页
📖指南
  • 核心(Hutool-core)
  • 配置文件(Hutool-setting)
  • 日志(Hutool-log)
  • 缓存(Hutool-cache)
  • JSON(Hutool-json)
  • 加密解密(Hutool-crypto)
  • DFA查找(Hutool-dfa)
  • 数据库(Hutool-db)
  • HTTP客户端(Hutool-http)
  • 定时任务(Hutool-cron)
  • 扩展(Hutool-extra)
  • 布隆过滤(Hutool-bloomFilter)
  • 切面(Hutool-aop)
  • 脚本(Hutool-script)
  • Office文档操作(Hutool-poi)
  • 系统调用(Hutool-system)
  • 图形验证码(Hutool-captcha)
  • 网络Socket(Hutool-socket)
  • JWT(Hutool-jwt)
💡javaDoc (opens new window)
⏳更新记录 (opens new window)
  • 🍎gitee (opens new window)
  • 🍏github (opens new window)
  • 快速入门

  • 核心(Hutool-core)

  • 配置文件(Hutool-setting)

  • 日志(Hutool-log)

  • 缓存(Hutool-cache)

  • JSON(Hutool-json)

  • 加密解密(Hutool-crypto)

  • DFA查找(Hutool-dfa)

  • 数据库(Hutool-db)

  • HTTP客户端(Hutool-http)

  • 定时任务(Hutool-cron)

  • 扩展(Hutool-extra)

  • 布隆过滤(Hutool-bloomFilter)

  • 切面(Hutool-aop)

  • 脚本(Hutool-script)

  • Office文档操作(Hutool-poi)

  • 系统调用(Hutool-system)

    • 系统属性调用-SystemUtil
    • Oshi封装-OshiUtil
      • 概述
      • 使用
  • 图形验证码(Hutool-captcha)

  • 网络Socket(Hutool-socket)

  • JWT(Hutool-jwt)

  • 指南
  • 系统调用(Hutool-system)
Hutool
2023-03-28
目录

Oshi封装-OshiUtil

特别赞助 by:

# 概述

Oshi是一个免费的基于JNA的获取操作系统和硬件信息的java库,Github地址是:oshi (opens new window)

它的优点是不需要安装任何其他本机库,并且旨在提供一种跨平台的实现来检索系统信息,例如操作系统版本,进程,内存和CPU使用率,磁盘和分区,设备,传感器等。

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

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

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

# 使用

先引入Oshi库:

<dependency>
	<groupId>com.github.oshi</groupId>
	<artifactId>oshi-core</artifactId>
	<version>6.4.1</version>
</dependency>

然后可以调用相关API获取相关信息。

例如我们想获取内存总量:

long total = OshiUtil.getMemory().getTotal();

我们也可以获取CPU的一些信息:

CpuInfo cpuInfo = OshiUtil.getCpuInfo();
Console.log(cpuInfo);
CpuInfo{cpu核心数=12, CPU总的使用率=12595.0, CPU系统使用率=1.74, CPU用户使用率=6.69, CPU当前等待率=0.0, CPU当前空闲率=91.57, CPU利用率=8.43, CPU型号信息='AMD Ryzen 5 4600U with Radeon Graphics         
 1 physical CPU package(s)
 6 physical CPU core(s)
 12 logical CPU(s)
Identifier: AuthenticAMD Family 23 Model 96 Stepping 1
ProcessorID: xxxxxxxxx
Microarchitecture: unknown'}
上次更新: 2025/05/06, 10:48:51
系统属性调用-SystemUtil
概述

← 系统属性调用-SystemUtil 概述→

Theme by Vdoing | Copyright © 2023-2025 Hutool | MulanPSL-2.0
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×