资源简介
使用sigar获取系统信息,例如内存,cpu,磁盘大小,jvm虚拟机信息,内置jar包已及工具类,工具类写了注释,很详细。

代码片段和文件信息
package com.gisquest.platform.modules.monitor.util;
import java.net.InetAddress;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Properties;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import javax.servlet.http.HttpServletRequest;
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.Sigar;
/**
* 获取系统信息工具类
*
* @author liul 2015年12月28日下午3:12:16
*/
public class MonitorUtil {
/**
* 获取电脑信息
*
* @return
*/
public static Map getComputerGeneral() {
Map result = null;
try {
result = new HashMap();
// ip地址
InetAddress address = InetAddress.getLocalHost();
String ip = address.getHostAddress();
// 计算机名称
Map map = System.getenv();
String computerName = map.get(“COMPUTERNAME“);
// 内存总量
Sigar sigar = new Sigar();
Mem mem = sigar.getMem();
double memoryTotal = longConversionDouble(mem.getTotal());
memoryTotal = memoryTotal / 1024 / 1024 / 1024;
String memoryString = String.format(“%.2f“ memoryTotal) + “GB“;
double memUsed = longConversionDouble(mem.getUsed());
memUsed = memUsed / 1024 / 1024 / 1024;
String memUsedString = String.format(“%.2f“ memUsed) + “GB“;
// 系统名称
Properties properties = System.getProperties();
String systemName = properties.getProperty(“os.name“);
String systemArch = properties.getProperty(“os.arch“);
String systemVersion = properties.getProperty(“os.version“);
result.put(“ip“ ip);//ip地址
result.put(“computerName“ computerName);// 电脑名称
result.put(“memoryString“ memoryString);//内存总量
result.put(“systemName“ systemName);// 操作系统的名称
result.put(“systemArch“ systemArch);// 操作系统构架
result.put(“systemVersion“ systemVersion);// 操作系统版本
result.put(“memUsedString“ memUsedString);// 当前内存使用量
} catch (Exception e) {
e.printStackTrace();
}
return result;
}
/**
* 获取jvm虚拟机信息
*
* @return
*/
public static Map getJVMInfo(HttpServletRequest request) {
Runtime runtime = Runtime.getRuntime();
Properties properties = System.getProperties();
Map map = new HashMap();
double jvmTotalMemoryDouble = longConversionDouble(runtime
.totalMemory());
jvmTotalMemoryDouble = jvmTotalMemoryDouble / 1024 / 1024 / 1024;
double jvmFreeMemoryDouble = longConversionDouble(runtime.freeMemory());
jvmFreeMemoryDouble = jvmFreeMemoryDouble / 1024 / 1024 / 1024;
String jdkPath = properties.getProperty(“java.home“);
jdkPath = jdkPath.substring(0jdkPath.lastIndexOf(properties.getProperty(“file.separator“)));
String tomcatPath = request.getSession().getServletContext().getRealPath(““);
tomcatPath = tomcatPat
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 478 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\AUTHORS
文件 1233 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\dotnet\default.build
文件 1194 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\dotnet\examples\CpuInfo.cs
文件 1978 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\dotnet\examples\Df.cs
文件 1336 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\dotnet\examples\Free.cs
文件 3181 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\dotnet\examples\Ifconfig.cs
文件 20734 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\dotnet\src\Sigar.cs
文件 3211 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\java\examples\CpuInfo.java
文件 5578 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\java\examples\Df.java
文件 1432 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\java\examples\Du.java
文件 2413 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\java\examples\EventLogTail.java
文件 2937 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\java\examples\FileVersionInfo.java
文件 2381 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\java\examples\Free.java
文件 4767 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\java\examples\Ifconfig.java
文件 5476 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\java\examples\Iostat.java
文件 1847 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\java\examples\Kill.java
文件 2147 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\java\examples\Ls.java
文件 2485 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\java\examples\MemWatch.java
文件 2065 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\java\examples\MultiPs.java
文件 2080 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\java\examples\NetInfo.java
文件 7853 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\java\examples\Netstat.java
文件 3487 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\java\examples\Nfsstat.java
文件 1361 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\java\examples\Pidof.java
文件 2209 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\java\examples\ProcessState.java
文件 2437 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\java\examples\ProcFileInfo.java
文件 3162 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\java\examples\ProcInfo.java
文件 2170 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\java\examples\ProcModuleInfo.java
文件 4589 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\java\examples\Ps.java
文件 2495 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\java\examples\Route.java
文件 7476 2010-04-28 17:00 sigar\hyperic-sigar-1.6.4\bindings\java\examples\Runner.java
............此处省略303个文件信息
- 上一篇:清爽夏日九宫格日志网源码
- 下一篇:微信打飞机Android版(源代码)
相关资源
- 微博系统(Java源码,servlet+jsp),适
- java串口通信全套完整代码-导入eclip
- jsonarray所必需的6个jar包.rar
- 三角网构TIN生成算法,Java语言实现
- java代码编写将excel数据导入到mysql数据
- Java写的cmm词法分析器源代码及javacc学
- JAVA JSP公司财务管理系统 源代码 论文
- JSP+MYSQL旅行社管理信息系统
- 推荐算法的JAVA实现
- 基于Java的酒店管理系统源码(毕业设
- java-图片识别 图片比较
- android毕业设计
- java23种设计模式+23个实例demo
- java Socket发送/接受报文
- JAVA828436
- java界面美化 提供多套皮肤直接使用
- 在线聊天系统(java代码)
- 基于Java的图书管理系统807185
- java中实现将页面数据导入Excel中
- java 企业销售管理系统
- java做的聊天系统(包括正规课程设计
- Java编写的qq聊天室
- 商店商品管理系统 JAVA写的 有界面
- JAVA开发聊天室程序
- 在linux系统下用java执行系统命令实例
- java期末考试试题两套(答案) 选择(
- JAVA3D编程示例(建模、交互)
- Java 文件加密传输
- java做的房产管理系统
- 基于jsp的bbs论坛 非常详细
评论
共有 条评论