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

【Java】Runtime与Properties获取系统信息

Java系列文章目录

补充内容 Windows通过SSH连接Linux
第一章 Linux基本命令的学习与Linux历史


文章目录

  • Java系列文章目录
  • 一、前言
  • 二、学习内容:
  • 三、问题描述
  • 四、解决方案:
    • 4.1 代码
    • 4.2 运行结果
  • 五、总结:

一、前言

  • 这些都被淘汰比较少用了,可能就看看系统信息还有点用,所以只是解一下历史看看即可

二、学习内容:

  • Runtime 类 主要用于与 JVM 运行时环境交互,执行外部命令、获取系统信息等。适用于需要与操作系统进行交互的场景,如执行脚本、监控系统资源等。
  • Properties 类主要用于管理配置信息,适合用于读取和存储配置文件。适用于需要存储键值对形式的配置信息的场景,如数据库连接信息、国际化资源等。

三、问题描述

  • 这个技术很少用了,只是看看他们的操作

四、解决方案:

4.1 代码

  • 使用方法如下

现在已经有很多框架和其他方法使用更方便了,比方说使用Properties进行配置已经被淘汰了

import java.io.IOException;public class Main {/*** 程序的入口点* @param args 命令行参数*/public static void main(String[] args) {// 输出当前时间戳System.out.println(System.currentTimeMillis());// 分隔线,用于区分输出内容System.out.println("=================================");// 输出系统属性信息System.out.println("系统属性:");System.out.println("操作系统名称: " + System.getProperty("os.name"));System.out.println("操作系统版本: " + System.getProperty("os.version"));System.out.println("操作系统架构: " + System.getProperty("os.arch"));System.out.println("用户名: " + System.getProperty("user.name"));System.out.println("当前工作目录: " + System.getProperty("user.dir"));// 分隔线,用于区分输出内容System.out.println("=================================");// 获取运行时环境Runtime runtime = Runtime.getRuntime();// 输出运行时环境信息System.out.println("处理器数量: " + runtime.availableProcessors());System.out.println("可用内存: " + runtime.freeMemory());System.out.println("总内存: " + runtime.totalMemory());System.out.println("最大内存: " + runtime.maxMemory());try {// 执行外部命令,这里以打开记事本为例Process process = runtime.exec("notepad.exe");// 等待进程执行完毕int exitCode = process.waitFor();// 输出进程执行结果System.out.println("进程退出码: " + exitCode);// 关闭进程process.destroy();} catch (IOException e) {// 处理执行外部命令异常System.err.println("执行外部命令失败: " + e.getMessage());} catch (InterruptedException e) {// 处理线程中断异常Thread.currentThread().interrupt();System.err.println("进程等待被中断: " + e.getMessage());}}
}

4.2 运行结果

本机状态如图

在这里插入图片描述


五、总结:

在现代 Spring 应用中,RuntimeProperties 被更高级的工具和技术所替代

了解一下历史,他们已经被替代了太具体的就没必要深入了解了

  • Runtime 类 在执行简单外部命令和获取系统信息方面仍然有用。
  • Properties 类 在简单的配置管理和向后兼容性方面仍然有用。
  • Spring Boot 提供了更高级的工具和技术,如 Configuration Properties、YAML/JSON配置、Spring Actuator 等,更适合现代应用的需求。

(后续有遇到问题再添加)


声明:如本内容中存在错误或不准确之处,欢迎指正。转载时请注明原作者信息(麻辣香蝈蝈)。

在这里插入图片描述

http://www.lryc.cn/news/434977.html

相关文章:

  • 基于SpringBoot的社团管理系统
  • UE5.3_跟一个插件—Socket.IO Client
  • 鸿蒙轻内核A核源码分析系列七 进程管理 (1)
  • qt QGraphicsScene场景坐标和场景内GraphicsItem局部坐标的相互转换
  • Windows与linux中docker的安装与使用
  • some electronic products
  • 刘润《关键跃升》读书笔记7
  • 带参宏定义
  • java流
  • Java ArrayList扩容机制 (源码解读)
  • 『功能项目』管理器基类【38】
  • Flex布局最后一行元素的对齐的解决方案
  • 【ShuQiHere】上章:计算与计算机的基础概念
  • 前端框架有哪些?全面解析主流前端框架
  • 4G MQTT网关在物联网应用中的优势-天拓四方
  • 【网上商城项目结构】
  • VMware-Ubuntu Server安装教程
  • 从hadoop平台下载文件到本地Windows
  • MySQL-CRUD入门2
  • 高级java每日一道面试题-2024年9月06日-基础篇-Java中的PO、VO、BO、DO、DAO、DTO、POJO是什么意思?
  • MFC读取PC6408板卡输入信号实例
  • @Async的使用说明
  • 经验笔记:SQL调优
  • Selenium使用浏览器用户配置进行测试
  • virsh命令的使用
  • 【来学Vue吧】创建一个Vue项目
  • C#迭代器方法和yield用法
  • 斗破C++编程入门系列之二十六:数组、指针和字符串:动态内存分配和释放(一星斗师)
  • Servlet 和 Spring Boot 的请求处理流程区别和例子
  • C++笔记之map的实用操作