content: package com.ruoyi.framework.web.domain.server;
  
  import java.lang.management.ManagementFactory;
  import com.ruoyi.common.utils.Arith;
  import com.ruoyi.common.utils.DateUtils;
  
  /**
   * JVM相关信息
   * 
   * @author ruoyi
   */
  public class Jvm
  {
      /**
       * 当前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 Arith.div(total, (1024 * 1024), 2);
      }
  
      public void setTotal(double total)
      {
          this.total = total;
      }
  
      public double getMax()
      {
          return Arith.div(max, (1024 * 1024), 2);
      }
  
      public void setMax(double max)
      {
          this.max = max;
      }
  
      public double getFree()
      {
          return Arith.div(free, (1024 * 1024), 2);
      }
  
      public void setFree(double free)
      {
          this.free = free;
      }
  
      public double getUsed()
      {
          return Arith.div(total - free, (1024 * 1024), 2);
      }
  
      public double getUsage()
      {
          return Arith.mul(Arith.div(total - free, total, 4), 100);
      }
  
      /**
       * 获取JDK名称
       */
      public String getName()
      {
          return ManagementFactory.getRuntimeMXBean().getVmName();
      }
  
      public String getVersion()
      {
          return version;
      }
  
      public void setVersion(String version)
      {
          this.version = version;
      }
  
      public String getHome()
      {
          return home;
      }
  
      public void setHome(String home)
      {
          this.home = home;
      }
  
      /**
       * JDK启动时间
       */
      public String getStartTime()
      {
          return DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, DateUtils.getServerStartDate());
      }
  
      /**
       * JDK运行时间
       */
      public String getRunTime()
      {
          return DateUtils.getDatePoor(DateUtils.getNowDate(), DateUtils.getServerStartDate());
      }
  }
  