文档章节

Java查看系统磁盘、内存、版本等

YuanyuanL
 YuanyuanL
发布于 2016/12/08 14:09
字数 433
阅读 37
收藏 1

java要想获取操作系统的相关信息可以通过: 1.java固有类获取(或者其他扩展工具类如 org.hyperic.sigar); 2.通过java的Runtime执行系统命令来获取。 下面是通过java固有类来获取的方法。注意其中带有com.sun的类已不再被维护使用有风险。

import java.lang.management.ManagementFactory;
import com.sun.management.OperatingSystemMXBean;

public class Test
{
    public static void main(String[] args)
    {
                Locale locale = Locale.getDefault();
		System.out.println(locale.getLanguage());//中文zh,英文en

		File[] roots = File.listRoots();
		for(File file : roots)
		{
			System.out.println(file.getAbsolutePath()+": "+file.getFreeSpace()/(1024*1024*1024)+" GB");
		}
		
		File efile= new File("e:/");
		System.out.println("E盘大小:" + + (efile.getFreeSpace()/(1024*1024*1024))+"GB");
		
		OperatingSystemMXBean osmb = (OperatingSystemMXBean) ManagementFactory.getOperatingSystemMXBean();
		System.out.println("系统物理内存总计:" + osmb.getTotalPhysicalMemorySize() /(1024*1024*1024) + "GB");
		System.out.println("系统物理可用内存总计:" + osmb.getFreePhysicalMemorySize() / (1024*1024*1024) + "GB");
		
                System.out.println("os name: "+System.getProperties().getProperty("os.name"));
		System.getProperties().list(System.out);
    }
}

输出结果:

en
C:\: 14 GB
E:\: 69 GB
F:\: 97 GB
G:\: 0 GB
E盘大小:69GB
系统物理内存总计:15GB
系统物理可用内存总计:7GB
os name: Windows 8.1
-- listing properties --
java.runtime.name=Java(TM) SE Runtime Environment
sun.boot.library.path=E:\java\64\jdk1.8.0_51\jre\bin
java.vm.version=25.51-b03
java.vm.vendor=Oracle Corporation
java.vendor.url=http://java.oracle.com/
path.separator=;
java.vm.name=Java HotSpot(TM) 64-Bit Server VM
file.encoding.pkg=sun.io
user.script=
user.country=CN
sun.java.launcher=SUN_STANDARD
sun.os.patch.level=
java.vm.specification.name=Java Virtual Machine Specification
user.dir=E:\EclipseWorkspace\hgdrm
java.runtime.version=1.8.0_51-b16
java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment
java.endorsed.dirs=E:\java\64\jdk1.8.0_51\jre\lib\endorsed
os.arch=amd64
java.io.tmpdir=C:\Users\highgoer\AppData\Local\Temp\
line.separator=
java.vm.specification.vendor=Oracle Corporation
user.variant=
os.name=Windows 8.1
sun.jnu.encoding=GBK
java.library.path=E:\java\64\jdk1.8.0_51\bin;C:\WINDOWS...
java.specification.name=Java Platform API Specification
java.class.version=52.0
sun.management.compiler=HotSpot 64-Bit Tiered Compilers
os.version=6.3
user.home=C:\Users\highgoer
user.timezone=Asia/Shanghai
java.awt.printerjob=sun.awt.windows.WPrinterJob
file.encoding=UTF-8
java.specification.version=1.8
user.name=highgoer
java.class.path=E:\EclipseWorkspace\hgdrm\target\clas...
java.vm.specification.version=1.8
sun.arch.data.model=64
java.home=E:\java\64\jdk1.8.0_51\jre
sun.java.command=com.highgo.hgdrm.agent.server.NettySe...
java.specification.vendor=Oracle Corporation
user.language=zh
awt.toolkit=sun.awt.windows.WToolkit
java.vm.info=mixed mode
java.version=1.8.0_51
java.ext.dirs=E:\java\64\jdk1.8.0_51\jre\lib\ext;C:...
sun.boot.class.path=E:\java\64\jdk1.8.0_51\jre\lib\resour...
java.vendor=Oracle Corporation
file.separator=\
java.vendor.url.bug=http://bugreport.sun.com/bugreport/
sun.cpu.endian=little
sun.io.unicode.encoding=UnicodeLittle
sun.desktop=windows
sun.cpu.isalist=amd64

© 著作权归作者所有

共有 人打赏支持
YuanyuanL

YuanyuanL

粉丝 152
博文 320
码字总数 187682
作品 0
济南
部门经理
用“逐步排除”的方法定位Java服务线上“系统性”故障

一、摘要 由于硬件问题、系统资源紧缺或者程序本身的BUG,Java服务在线上不可避免地会出现一些“系统性”故障,比如:服务性能明显下降、部分(或所有)接口超时或卡死等。其中部分故障隐藏颇...

LostTimes
2015/11/19
0
0
JVM性能调优实践——JVM篇

前言 在遇到实际性能问题时,除了关注系统性能指标。还要结合应用程序的系统的日志、堆栈信息、GClog、threaddump等数据进行问题分析和定位。关于性能指标分析可以参考前一篇JVM性能调优实践...

lijingyao8206
05/24
0
0
Azure虚拟机Centos6.5安装oracle jdk7+mysql5.6

1,先在微软云管理平台开虚拟机,我开的A5配置(2核,14G内存)。 2,开启完毕后,登录到系统。 3,使用wget下载oracle jdk,参考www.oracle.com,我下载的rpm包64位。因azure虚拟机下载jdk...

longfirst
2015/05/25
0
0
记几次JAVA系统故障问题定位过程

把自己以前碰到的case汇总列下,作为对自己过去的一部分工作总结。 问题定位一般步骤 具备常见的理论知识,不一定要全记住细节。但是需要知道问题的关联性,然后根据某些关键字搜索或者查阅资...

geecoodeer
2014/01/27
0
5
Java 9、10、11,哪个才是 Java 程序员的本命?

之前,我们在《Java 10无跳票发布,主推的新特性引争议》的文章中做了一个小的调查,主要是调查现在的Java程序员都在使用哪个版本的Java?根据调查结果,绝大部分的程序员都在使用Java 8。 无独...

Java的博客
07/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

java基础知识,小栗子

来操作一下数组.....注意带参数的变长数组的使用. package com.avatus;import java.util.Random;import java.util.Scanner;public class Main { public static void main(St...

Oh_really
11分钟前
0
0
SSO单点登录PHP简单版

  前面做了一个新项目,需要用户资源可以需要共享。由于之前没有做过这样的东西,回家之后,立马网站百度“单点登录”。帖子很多,甄别之后,这里列几篇认为比较有营养。   http://blog...

slagga
49分钟前
2
0
Java 泛型详解-绝对是对泛型方法讲解最详细的,没有之一

对java的泛型特性的了解仅限于表面的浅浅一层,直到在学习设计模式时发现有不了解的用法,才想起详细的记录一下。 本文参考java 泛型详解、Java中的泛型方法、 java泛型详解 1 概述 泛型在j...

hensemlee
52分钟前
2
0
Annotation注解详细介绍

目录介绍 1.Annotation库的简单介绍 2.@Nullable和@NonNull 3.资源类型注释 4.类型定义注释 5.线程注释 6.RGB颜色纸注释 7.值范围注释 8.权限注释 9.重写函数注释 10.返回值注释 11.@Keep注释...

潇湘剑雨
54分钟前
2
0
一步步编写自己的PHP爬取代理IP项目(二)

这一章节我们正式开展我们的爬虫项目,首先我们先要知道哪个网站能获取到免费代理IP,目前比较火的有西刺代理,快代理等,这里我们拿西刺代理作为例子。 这里就是一个个免费的IP地址以及各自...

NateHuang
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部