当前位置: 首页 > news >正文

把别人的图片拿来做网站成都商城网站建设

把别人的图片拿来做网站,成都商城网站建设,wordpress 数据乱码,查询建设工程施工规范网站概念 OSHI是Java的免费基于JNA的#xff08;本机#xff09;操作系统和硬件信息库。它不需要安装任何其他本机库#xff0c;并且旨在提供一种跨平台的实现来检索系统信息#xff0c;例如操作系统版本#xff0c;进程#xff0c;内存和CPU使用率#xff0c;磁盘和分区本机操作系统和硬件信息库。它不需要安装任何其他本机库并且旨在提供一种跨平台的实现来检索系统信息例如操作系统版本进程内存和CPU使用率磁盘和分区设备传感器等。 使用OSHI我们可以对应用程序进行监控可以对应用程序所在的服务器资源进行监控可以监控到很多的指标如下 1、计算机系统和固件底板 2、操作系统和版本/内部版本 3、物理核心和逻辑超线程CPU处理器组NUMA节点 4、系统和每个处理器的负载百分比和滴答计数器 5、CPU正常运行时间进程和线程 6、进程正常运行时间CPU内存使用率用户/组命令行 7、已使用/可用的物理和虚拟内存 8、挂载的文件系统类型可用空间和总空间 9、磁盘驱动器型号序列号大小和分区 10、网络接口IP带宽输入/输出 11、电池状态电量百分比剩余时间电量使用情况统计信息 12、连接的显示器带有EDID信息 13、USB设备 14、传感器温度风扇速度电压 项目结构 使用 pom.xml !-- 获取系统信息 --dependencygroupIdcom.github.oshi/groupIdartifactIdoshi-core/artifactIdversion3.9.1/version/dependency!-- 项目中用到了 --dependencygroupIdcn.hutool/groupIdartifactIdhutool-all/artifactIdversion5.8.5/version/dependencydomain依次导入实体 package com.wcbtest.oshi.domain;import cn.hutool.core.util.NumberUtil; import io.swagger.annotations.ApiModel; import lombok.Data;import java.io.Serializable;ApiModel(valueCPU信息) Data public class Cpu implements Serializable {private static final long serialVersionUID 1L;/*** 核心数*/private int cpuNum;/*** CPU总的使用率*/private double total;/*** CPU系统使用率*/private double sys;/*** CPU用户使用率*/private double used;/*** CPU当前等待率*/private double wait;/*** CPU当前空闲率*/private double free;public double getTotal() {return NumberUtil.round(NumberUtil.mul(total, 100), 2).doubleValue();}public double getSys() {return NumberUtil.round(NumberUtil.mul(sys / total, 100), 2).doubleValue();}public double getUsed() {return NumberUtil.round(NumberUtil.mul(used / total, 100), 2).doubleValue();}public double getWait() {return NumberUtil.round(NumberUtil.mul(wait / total, 100), 2).doubleValue();}public double getFree() {return NumberUtil.round(NumberUtil.mul(free / total, 100), 2).doubleValue();} }package com.wcbtest.oshi.domain;import cn.hutool.core.date.DateUnit; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.NumberUtil; import io.swagger.annotations.ApiModel; import lombok.Data;import java.io.Serializable; import java.lang.management.ManagementFactory; import java.util.Date;ApiModel(valueJvm信息) Data public class Jvm implements Serializable {private static final long serialVersionUID 1L;/*** 当前JVM占用的内存总数(M)*/private double total;/*** JVM最大可用内存总数(M)*/private double max;/*** JVM空闲内存(M)*/private double free;/*** JDK版本*/private String version;/*** JDK路径*/private String home;public double getTotal() {return NumberUtil.div(total, (1024 * 1024), 2);}public double getMax() {return NumberUtil.div(max, (1024 * 1024), 2);}public double getFree() {return NumberUtil.div(free, (1024 * 1024), 2);}public double getUsed() {return NumberUtil.div(total - free, (1024 * 1024), 2);}public String getVersion() {return version;}public String getHome() {return home;}public double getUsage() {return NumberUtil.mul(NumberUtil.div(total - free, total, 4), 100);}/*** 获取JDK名称*/public String getName() {return ManagementFactory.getRuntimeMXBean().getVmName();}/*** JDK启动时间*/public String getStartTime() {long time ManagementFactory.getRuntimeMXBean().getStartTime();Date date new Date(time);return DateUtil.formatDateTime(date);}/*** JDK运行时间*/public String getRunTime() {long time ManagementFactory.getRuntimeMXBean().getStartTime();Date date new Date(time);//运行多少分钟long runMS DateUtil.between(date, new Date(), DateUnit.MS);long nd 1000 * 24 * 60 * 60;long nh 1000 * 60 * 60;long nm 1000 * 60;long day runMS / nd;long hour runMS % nd / nh;long min runMS % nd % nh / nm;return day 天 hour 小时 min 分钟;} }package com.wcbtest.oshi.domain;import cn.hutool.core.util.NumberUtil; import io.swagger.annotations.ApiModel; import lombok.Data;import java.io.Serializable;ApiModel(value内存信息) Data public class Mem implements Serializable {private static final long serialVersionUID 1L;/*** 内存总量*/private double total;/*** 已用内存*/private double used;/*** 剩余内存*/private double free;public double getTotal() {return NumberUtil.div(total, (1024 * 1024 * 1024), 2);}public double getUsed() {return NumberUtil.div(used, (1024 * 1024 * 1024), 2);}public double getFree() {return NumberUtil.div(free, (1024 * 1024 * 1024), 2);}public double getUsage() {return NumberUtil.mul(NumberUtil.div(used, total, 4), 100);} }package com.wcbtest.oshi.domain;import io.swagger.annotations.ApiModel; import lombok.Data;import java.io.Serializable;ApiModel(value服务器相关信息) Data public class Sys implements Serializable {private static final long serialVersionUID 1L;/*** 服务器名称*/private String computerName;/*** 服务器Ip*/private String computerIp;/*** 项目路径*/private String userDir;/*** 操作系统*/private String osName;/*** 系统架构*/private String osArch; }package com.wcbtest.oshi.domain;import io.swagger.annotations.ApiModel; import lombok.Data;import java.io.Serializable; ApiModel(value磁盘相关信息) Data public class SysFile implements Serializable {private static final long serialVersionUID 1L;/*** 盘符路径*/private String dirName;/*** 盘符类型*/private String sysTypeName;/*** 文件类型*/private String typeName;/*** 总大小*/private String total;/*** 剩余大小*/private String free;/*** 已经使用量*/private String used;/*** 资源的使用率*/private double usage; }package com.wcbtest.oshi.domain;import cn.hutool.core.net.NetUtil; import cn.hutool.core.util.NumberUtil; import cn.hutool.system.HostInfo; import cn.hutool.system.SystemUtil; import io.swagger.annotations.ApiModel; import lombok.Data; import oshi.SystemInfo; import oshi.hardware.CentralProcessor; import oshi.hardware.CentralProcessor.TickType; import oshi.hardware.GlobalMemory; import oshi.software.os.FileSystem; import oshi.software.os.OSFileStore; import oshi.software.os.OperatingSystem; import oshi.util.Util;import java.io.Serializable; import java.util.LinkedList; import java.util.List; import java.util.Properties;ApiModel(value 获取系统硬件信息所有信息) Data public class SystemHardwareInfo implements Serializable {private static final long serialVersionUID 1L;private static final int OSHI_WAIT_SECOND 1000;/*** CPU相关信息*/private Cpu cpu new Cpu();/*** 內存相关信息*/private Mem mem new Mem();/*** JVM相关信息*/private Jvm jvm new Jvm();/*** 服务器相关信息*/private Sys sys new Sys();/*** 磁盘相关信息*/private ListSysFile sysFiles new LinkedListSysFile();/*** 调用此方法初始化数据** throws Exception*/public void initData() {String type null;SystemInfo si new SystemInfo();setCpuInfo(si.getHardware().getProcessor());setJvmInfo();setMemInfo(si.getHardware().getMemory());setSysInfo();setSysFiles(si.getOperatingSystem());}/*** 设置CPU信息*/private void setCpuInfo(CentralProcessor processor) {// CPU信息long[] prevTicks processor.getSystemCpuLoadTicks();Util.sleep(OSHI_WAIT_SECOND);long[] ticks processor.getSystemCpuLoadTicks();long nice ticks[TickType.NICE.getIndex()] - prevTicks[TickType.NICE.getIndex()];long irq ticks[TickType.IRQ.getIndex()] - prevTicks[TickType.IRQ.getIndex()];long softirq ticks[TickType.SOFTIRQ.getIndex()] - prevTicks[TickType.SOFTIRQ.getIndex()];long steal ticks[TickType.STEAL.getIndex()] - prevTicks[TickType.STEAL.getIndex()];long cSys ticks[TickType.SYSTEM.getIndex()] - prevTicks[TickType.SYSTEM.getIndex()];long user ticks[TickType.USER.getIndex()] - prevTicks[TickType.USER.getIndex()];long iowait ticks[TickType.IOWAIT.getIndex()] - prevTicks[TickType.IOWAIT.getIndex()];long idle ticks[TickType.IDLE.getIndex()] - prevTicks[TickType.IDLE.getIndex()];long totalCpu user nice cSys idle iowait irq softirq steal;cpu.setCpuNum(processor.getLogicalProcessorCount());cpu.setTotal(totalCpu);cpu.setSys(cSys);cpu.setUsed(user);cpu.setWait(iowait);cpu.setFree(idle);}/*** 设置内存信息*/private void setMemInfo(GlobalMemory memory) {mem.setTotal(memory.getTotal());mem.setUsed(memory.getTotal() - memory.getAvailable());mem.setFree(memory.getAvailable());}/*** 设置服务器信息*/private void setSysInfo() {Properties props System.getProperties();HostInfo hostInfo SystemUtil.getHostInfo();String name hostInfo.getName();sys.setComputerName(name);//sys.setComputerName(IpUtil.getHostName());sys.setComputerIp(NetUtil.getLocalhostStr());sys.setOsName(props.getProperty(os.name));sys.setOsArch(props.getProperty(os.arch));sys.setUserDir(props.getProperty(user.dir));}/*** 设置Java虚拟机*/private void setJvmInfo() {Properties props System.getProperties();jvm.setTotal(Runtime.getRuntime().totalMemory());jvm.setMax(Runtime.getRuntime().maxMemory());jvm.setFree(Runtime.getRuntime().freeMemory());jvm.setVersion(props.getProperty(java.version));jvm.setHome(props.getProperty(java.home));}/*** 设置磁盘信息*/private void setSysFiles(OperatingSystem os) {FileSystem fileSystem os.getFileSystem();OSFileStore[] fsArray fileSystem.getFileStores();for (OSFileStore fs : fsArray) {long free fs.getUsableSpace();long total fs.getTotalSpace();long used total - free;SysFile sysFile new SysFile();sysFile.setDirName(fs.getMount());sysFile.setSysTypeName(fs.getType());sysFile.setTypeName(fs.getName());sysFile.setTotal(convertFileSize(total));sysFile.setFree(convertFileSize(free));sysFile.setUsed(convertFileSize(used));sysFile.setUsage(NumberUtil.round(NumberUtil.mul(used, total, 4), 100).doubleValue());//sysFile.setUsage(NumberUtil.round(NumberUtil.mul((float)used/(float)total, 100), 2).doubleValue());sysFiles.add(sysFile);}}/*** 字节转换** param size 字节大小* return 转换后值*/public String convertFileSize(long size) {long kb 1024;long mb kb * 1024;long gb mb * 1024;if (size gb) {return String.format(%.1f GB, (float) size / gb);} else if (size mb) {float f (float) size / mb;return String.format(f 100 ? %.0f MB : %.1f MB, f);} else if (size kb) {float f (float) size / kb;return String.format(f 100 ? %.0f KB : %.1f KB, f);} else {return String.format(%d B, size);}} }controller测试 package com.wcbtest.oshi.controller;import com.wcbtest.oshi.domain.SystemHardwareInfo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;RestController Api(tags 硬件信息基础接口) RequestMapping(/oshi) public class OshiController {ApiOperation(value 获取硬件信息信息)GetMapping(/sysInfo)public Object all() {SystemHardwareInfo systemHardwareInfo new SystemHardwareInfo();systemHardwareInfo.initData();return systemHardwareInfo;}}
http://www.pierceye.com/news/710435/

相关文章:

  • 网站建设 html5wordpress 关注公众号
  • 自建公司网站利用网站文件下载做推广
  • 酒店网站素材软件开发合同范本大全
  • 安康市住房和城乡建设局网站网站建设广告宣传素材
  • 没有网站怎么做链接视频网上哪里给公司做网站
  • 广告网站制作报价网站开发环境怎么写
  • 网站开发总结与收获智慧团建登录官网
  • 旅游电子商务网站的建设建设局网站项目负责人资质要求
  • 设计响应式网站多少钱网站建设行业新闻动态
  • 一般做外单的有哪些网站太原市网站制作公司
  • wordpress 文章内seo代码优化工具
  • 做网站用的笔记本配置网络科技公司骗术
  • 在线建设网站江苏中南建设集团网站是多少
  • 中国建设银行官网站陕西西安网站建设域名怎么用
  • 佛山高端网站制作公司自己做的网站怎么发布到百度
  • 网站建设空间选择的重要性wordpress菲插件关键词
  • 基于wap的企业网站设计与实现洛阳霞光seo网络公司
  • 在家做的手工活哪里有网站网站开发与运营方向和企业管理方向
  • 厦门网站建设厦门南京宣传片公司有哪些
  • 专门做问卷的网站南宁做网站公司
  • 鹰潭做网站公司网站模板及素材
  • dw网站引导页怎么做wordpress 福利
  • PS网站设计网站每年都要备案吗
  • 建设通网站账号erp实施顾问
  • 变装小说 wordpress网站建设好怎么优化
  • 苏州网站建设制作开发公司江浦做网站
  • 网站开发哪一门语言更快网站设计方案模板
  • 阿里云做网站需要些什么条件个人博客网站设计模板
  • 更改网站模板内容我赢职场wordpress
  • h5模板下载有哪些网站南京高端网站制作公司