| package com.dy.common.util; | 
|   | 
| import lombok.Data; | 
| import oshi.SystemInfo; | 
| import oshi.hardware.HardwareAbstractionLayer; | 
|   | 
| import java.util.LinkedList; | 
|   | 
| /** | 
|  * @Author: liurunyu | 
|  * @Date: 2024/8/2 15:37 | 
|  * @Description | 
|  */ | 
| public class SysUtil { | 
|   | 
|     public static InfoVo info() throws Exception { | 
|         InfoVo vo = new InfoVo() ; | 
|         SystemInfo si = new SystemInfo(); | 
|         HardwareAbstractionLayer hal = si.getHardware(); | 
|   | 
|         vo.cpuInfoVo = SysCpuUtil.info(hal.getProcessor()); | 
|   | 
|         vo.memInfoVo = SysMemoryUtil.info(hal.getMemory()); | 
|   | 
|         vo.sysInfoVo = SysSysUtil.info(); | 
|   | 
|         vo.jvmInfoVo = SysJvmUtil.info(); | 
|   | 
|         vo.sysFiles = SysFileSysUtil.info(si.getOperatingSystem()); | 
|   | 
|         return vo ; | 
|     } | 
|   | 
|     @Data | 
|     public static class InfoVo { | 
|         public SysCpuUtil.CpuInfoVo cpuInfoVo ; | 
|         public SysJvmUtil.JvmInfoVo jvmInfoVo ; | 
|         public SysMemoryUtil.MemInfoVo memInfoVo ; | 
|         public LinkedList<SysFileSysUtil.SysFile> sysFiles ; | 
|         public SysSysUtil.SysInfoVo sysInfoVo ; | 
|   | 
|         public String toString(){ | 
|             StringBuilder sb = new StringBuilder() ; | 
|             sb.append("系统信息:\n"); | 
|             sb.append("  " + (cpuInfoVo != null?cpuInfoVo.toString():"") + "\n"); | 
|             sb.append("  " + (jvmInfoVo != null?jvmInfoVo.toString():"") + "\n"); | 
|             sb.append("  " + (memInfoVo != null?memInfoVo.toString():"") + "\n"); | 
|             if(sysFiles != null && sysFiles.size() > 0){ | 
|                 for(SysFileSysUtil.SysFile f : sysFiles){ | 
|                     sb.append("  " + f.toString() + "\n"); | 
|                 } | 
|             } | 
|             sb.append("  " + (sysInfoVo != null?sysInfoVo.toString():"") + "\n"); | 
|   | 
|             return sb.toString() ; | 
|         } | 
|     } | 
|   | 
|     public static void main(String[] args) throws Exception{ | 
|         InfoVo vo = SysUtil.info() ; | 
|         System.out.println(vo.toString()); | 
|     } | 
| } |