How do I get system properties information?

package org.kodejava.example.management;

import java.lang.management.ManagementFactory;
import java.lang.management.RuntimeMXBean;
import java.util.Map;
import java.util.Set;

public class GetSystemProperties {
    public static void main(String[] args) {
        RuntimeMXBean bean = ManagementFactory.getRuntimeMXBean();

        // Returns a map of names and values of all system
        // properties. This method calls System.getProperties()
        // to get all system properties. Properties whose
        // name or value is not a String are omitted.
        Map<String, String> systemProperties = bean.getSystemProperties();
        Set<String> keys = systemProperties.keySet();
        for (String key : keys) {
            String value = systemProperties.get(key);
            System.out.printf("Property[%s] = %s.%n", key, value);
        }
    }
}

Some of the properties information captured by the code snippet above are:

Property[java.vm.vendor] = Oracle Corporation.
Property[sun.arch.data.model] = 64.
Property[java.vendor.url] = http://java.oracle.com/.
Property[user.timezone] = .
Property[user.country.format] = ID.
Property[os.name] = Mac OS X.
Property[java.vm.specification.version] = 1.8.
Property[user.country] = US.
Property[sun.java.launcher] = SUN_STANDARD.
Property[sun.boot.library.path] = /Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/jre/lib.
Property[sun.java.command] = org.kodejava.example.management.GetSystemProperties.
Property[http.nonProxyHosts] = local|*.local|169.254/16|*.169.254/16.
Property[sun.cpu.endian] = little.
Property[user.home] = /Users/wsaryada.
Property[user.language] = en.
Property[java.specification.vendor] = Oracle Corporation.
Property[java.home] = /Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/jre.
Property[file.separator] = /.
Property[line.separator] = 
.
Property[java.vm.specification.vendor] = Oracle Corporation.
Property[java.specification.name] = Java Platform API Specification.
Property[java.awt.graphicsenv] = sun.awt.CGraphicsEnvironment.

How do I get the start time of a JVM?

package org.kodejava.example.management;

import java.lang.management.ManagementFactory;
import java.lang.management.RuntimeMXBean;
import java.util.Date;

public class GetStartTime {
    public static void main(String[] args) {
        RuntimeMXBean bean = ManagementFactory.getRuntimeMXBean();

        // Returns the start time of the Java virtual machine in 
        // milliseconds. This method returns the approximate time 
        // when the Java virtual machine started.
        long startTime = bean.getStartTime();
        Date startDate = new Date(startTime);
        System.out.println("Start Time = " + startTime);
        System.out.println("Start Date = " + startDate);
    }
}

The result of the code snippet above:

Start Time = 1513234850942
Start Date = Thu Dec 14 15:00:50 WITA 2017

How do I get the up time of a JVM?

package org.kodejava.example.management;

import java.lang.management.ManagementFactory;
import java.lang.management.RuntimeMXBean;

public class GetUpTime {
    public static void main(String[] args) {
        RuntimeMXBean bean = ManagementFactory.getRuntimeMXBean();

        // Returns the up time of the Java virtual machine in
        // milliseconds.
        long upTime = bean.getUptime();
        System.out.printf("Up Time = %d (ms)", upTime);
    }
}

The output of the code snippet above:

Up Time = 246 (ms)