【Java 语言】读取 properties 配置文件 ( Java 语言中的 properties 配置文件 | 使用 properties 配置文件 )

news2024/10/7 12:27:17

文章目录

  • 一、Java 语言中的 properties 配置文件
  • 二、使用 properties 配置文件
  • 三、完整代码示例
    • 1、Java 代码
    • 2、properties 配置文件
    • 3、执行结果






一、Java 语言中的 properties 配置文件



Java 语言中 , properties 配置文件 是一种用于存储应用程序配置信息的文本文件 ;

properties 配置文件 通常用于配置应用程序的 各种 参数 ;


properties 配置文件 是 由一系列 键值对 组成的 , 每个 键值对 都表示一个 配置项 ;

每个配置项由 一个 键值对 组成 , 键值对 之间使用等号 " = " 分隔 ;


properties 配置文件 , 文件名一般是 " 名称.properties " ,

properties 配置文件 内容如下 :

database.url=jdbc:mysql://localhost:3306/mydb  
database.username=root  
database.password=secret

上述配置中 ,

  • database.url 是 键 , 对应的 值 为 jdbc:mysql://localhost:3306/mydb ;
  • database.username 是 键 , 对应的 值 为 root ;
  • database.password 是 键 , 对应的 值 为 secret ;




二、使用 properties 配置文件



在 Java 语言中 , 使用 Properties 类 读取 和 操作 properties 配置文件 ;

通过加载 properties 配置文件 , 应用程序可以在运行时获取所需的配置信息 , 并根据这些信息进行相应的操作 ;


使用 Properties 类 读取 properties 配置 流程如下 :

  • 首先 , 创建 Properties 类对象 ;
Properties prop = new Properties(); 
  • 然后 , 创建 文件输入流 , 读取指定的 properties 配置文件 ;
FileInputStream input = new FileInputStream("config.properties");  
  • 再后 , 调用 Properties 实例对象的 load 函数 , 加载 properties 配置文件 的 文件输入流 ;
prop.load(input);  
  • 最后 , 调用 Properties 实例对象的 getProperty 函数 , 获取指定 键 对应的 值 ;
prop.getProperty("database.url")




三、完整代码示例




1、Java 代码


import java.io.FileInputStream;
import java.io.IOException;
import java.util.Properties;

public class Main {
    public static void main(String[] args) {
        // 首先 , 创建 Properties 类对象
        Properties prop = new Properties();
        try {
            // 然后 , 创建 文件输入流 , 读取指定的 properties 配置文件
            FileInputStream input = new FileInputStream("config.properties");

            // 再后 , 调用 Properties 实例对象的 load 函数 , 加载 properties 配置文件 的 文件输入流
            prop.load(input);

            // 最后 , 调用 Properties 实例对象的 getProperty 函数 , 获取指定 键 对应的 值
            System.out.println("database.url: " + prop.getProperty("database.url"));
            System.out.println("database.username: " + prop.getProperty("database.username"));
            System.out.println("database.password: " + prop.getProperty("database.password"));

        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}


2、properties 配置文件


database.url=jdbc:mysql://localhost:3306/mydb  
database.username=root  
database.password=secret

3、执行结果


执行结果 :

database.url: jdbc:mysql://localhost:3306/mydb
database.username: root
database.password: secret

在这里插入图片描述


代码下载 : https://download.csdn.net/download/han1202012/88541314

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1217156.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

hive数仓-数据的质量管理

版本20231116 要理解数据的质量管理,应具备hive数据仓库的相关知识 文章目录 1.理解什么是数据的质量管理:2.数据质量管理的规划数据质量标准的分类 3.数据质量管理解决方案1.ods层的数据质量校验1)首先在hive上建立一个仓库,添加…

pycharm2023关闭项目后一直显示正在关闭项目-解决办法

网上的很多教程都试了不行,直接用下面的方法有效解决。 点击 帮助--查找操作--输入Registry--点注册表,取消ide.await.scope.completion后的勾选即可。

目标检测—YOLO系列(二 ) 解读论文与复现代码YOLOv1 PyTorch

精读论文 前言 从这篇开始,我们将进入YOLO的学习。YOLO是目前比较流行的目标检测算法,速度快且结构简单,其他的目标检测算法如RCNN系列,以后有时间的话再介绍。 本文主要介绍的是YOLOV1,这是由以Joseph Redmon为首的…

博物馆信息展示预约小程序的效果如何

随着大环境放开,如博物馆等场所也开始了正常营业,而这些场所在市场中中的需求度很广,每天客流量也相对可观。 但依然发现博物馆痛点所在。 通过【雨科】平台搭建博物馆小程序展示所有内容信息,覆盖微信、百度、头条、抖音、支付宝…

Android 启动优化案例-WebView非预期初始化排查

作者:邹阿涛涛涛涛涛涛 去年年底做启动优化时,有个比较好玩的 case 给大家分享下,希望大家能从我的分享里 get 到我在做一些问题排查修复时是怎么看上去又low又土又高效的。 1. 现象 在我们使用 Perfetto 进行app 启动过程性能观测时&#…

9.程序的机器级代码表示,CISC和RISC

目录 一. x86汇遍语言基础(Intel格式) 二. AT&T格式汇编语言 三. 程序的机器级代码表示 (1)选择语句 (2)循环语句 (3)函数调用 1.函数调用命令 2.栈帧及其访问 3.栈帧的…

交换机堆叠 配置(H3C)堆叠中一台故障如何替换

交换机堆叠 配置(H3C)堆叠中一台故障如何替换 堆叠用来干什么?配置两台成员设备的 IRF(堆叠)Switch01配置Switch02配置 如何替换堆叠中坏掉的一台交换机 堆叠用来干什么? 一台交换机网口有限,无…

【Java 进阶篇】JQuery 遍历:发现元素的魔法之旅

欢迎来到 JQuery 的奇妙世界,一个充满活力和灵感的地方。在这个世界里,我们将一起探讨 JQuery 的遍历功能,这是一个让你轻松发现和操作网页元素的神奇工具。无需太多前端经验,只要有一颗探险的心,你就能在 JQuery 遍历…

yolo改进替换VanillaNet backbone

论文地址:https://arxiv.org/pdf/2305.12972.pdf 代码地址:GitHub - huawei-noah/VanillaNet VanillaNet简介 基础模型的核心是“更多不同”的哲学,计算机视觉和自然语言处理的惊人成功就是例证。 然而,优化的挑战和Transformer模…

矿区安全检查VR模拟仿真培训系统更全面、生动有效

矿山企业岗位基数大,生产过程中会持续有新入矿的施工人员及不定期接待的参观人员,下井安全须知培训需求量大。传统实景拍摄的视频剪辑表达方式有限,拍摄机位受限,难以生动表达安全须知的内容,且井下现场拍摄光线不理想…

Spring Boot 项目部署方案!打包 + Shell 脚本部署详解

文章目录 概要一 、profiles指定不同环境的配置二、maven-assembly-plugin打发布压缩包三、 分享shenniu_publish.sh程序启动工具四、linux上使用shenniu_publish.sh启动程序 概要 本篇和大家分享的是springboot打包并结合shell脚本命令部署,重点在分享一个shell程…

qnx 工程目录创建工具 addvariant

文章目录 前言一、addvariant 是什么二、addvariant 使用实例1. variant names 参数说明2. 创建一个可执行文件工程3. 创建一个动态库工程 总结参考资料 前言 本文主要介绍如何在qnx 开发环境中创建工程目录及其相关的配置文件(common.mk, Makefile 文件等) 软件版本&#xff…

第四代管网水位监测仪:管网水位监测仪效果怎么样?

随着我国城市化进程的推进,随之而来的是城市规模不断扩大,各类排水管网设施需要检查的范围也日益扩大。尽管市政管理部门已安排人员定期巡查,但仍无法对井下水位进行24小时实时监控。如遇管网阻塞、窨井满溢等情况,若不及时处理将…

(七)五种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB

一、五种算法(DBO、LO、SWO、COA、GRO)简介 1、蜣螂优化算法DBO 蜣螂优化算法(Dung beetle optimizer,DBO)由Jiankai Xue和Bo Shen于2022年提出,该算法主要受蜣螂的滚球、跳舞、觅食、偷窃和繁殖行为的启…

python 最快多长时间学完?

以下是一个为零基础学员制作Python速成学习计划。这个计划包括了一些基本的Python概念和技能,以及一些实用的学习技巧。 第1周:基础入门 Python简介:了解Python的历史、特点、应用领域。 安装Python:在你的电脑上安装Python&am…

【L2GD】: 无环局部梯度下降

文章链接:Federated Learning of a Mixture of Global and Local Models 发表期刊(会议): ICLR 2021 Conference(机器学习顶会) 往期博客:FLMix: 联邦学习新范式——局部和全局的结合 目录 1.背景介绍2. …

赶快来!程序员接单必须知道的六大注意事项!!!

花花世界迷人眼,增加实力多搞钱!对于咱程序员来说,搞钱的最好办法就是网上接单了,相信也有不少小伙伴已经在尝试了吧!但是如何正确的搞钱呢?其中的注意事项你真的了解吗? 本期就和小编一起来看…

最佳实践-使用Github Actions来构建跨平台容器镜像

概述 GitHub Actions 是一种持续集成和持续交付 (CI/CD) 平台,可用于自动执行生成、测试和部署管道。 您可以创建工作流程来构建和测试存储库的每个拉取请求,或将合并的拉取请求部署到生产环境。 GitHub Actions 不仅仅是 DevOps,还允许您在存…

【云原生-Kurbernets篇】Kurbernets集群的调度策略

调度 一、Kurbernetes的list-watch机制1.1 list-watch机制简介1.2 创建pod的流程(结合list-watch机制) 二、Scheduler的调度策略2.1 简介2.2 预选策略(predicate)2.3 优选策略(priorities) 三、标签管理3.1…

C51--WiFi模块ESP8266--AT指令

ESP8266 面向物联网应用的,高性价比、高度集成的WiFi MCU 简介: 高度集成: ESP8266EX集成了32位Tensilica 处理器、标准数字外设接口、天线开关、射频balun、功率放大器、底噪放大器、过滤器和电源管理模块,可将所占的PCB空间降…