Properties类的使用

news2024/9/22 4:17:54

Properties类是一个配置文件类,主要作用就是用来封装配置文件,将配置文件加载成为一个Properties对象。
注意:Properties类一般用来加载 .properties配置文件

首先看一下.properties配置文件的样子

driverClassName=com.mysql.cj.jdbc.Driver  
url=jdbc:mysql://localhost:3306/user  
username=root  
password=root  
#初始化连接  
initialSize=5  
#最大连接数量  
maxActive=10  
#最大空闲连接  
maxIdle=10

这就是一个普通的.properties配置文件的基本样子。
可以看到,在.properties配置文件中,参数和值都是以键值对的形式存在的,所以说Properties类本质上就是一个Map的实现类,其中参数名称是key,参数值是value。Map接口中定义的方法可以在Properties实例对象上调用

Properties的常用方法

方法名说明
setProperty(String key,String value)向Properties对象中添加参数和值
getProperty(String key)获取指定参数值
load(InputStream in)以字节输入流加载配置文件到对象中
load(Reader in)以字符输入流加载配置文件到对象中
store(OutputStream out,String comments)以字节输出流将对象中的内容输出到配置文件中
store(Writer out, String comments)以字符输出流将对象中的内容输出到配置文件中

看一个小例子:读取配置文件并输出文件中的内容
这是要读取的配置文件

driverClassName=com.mysql.cj.jdbc.Driver  
url=jdbc:mysql://localhost:3306/user  
username=root  
password=root  
#初始化连接  
initialSize=5  
#最大连接数量  
maxActive=10  
#最大空闲连接  
maxIdle=10

这是java测试代码

Properties properties = new Properties();  
// 需要一个文件输入流对象  
properties.load(new FileInputStream("src/pro.properties"));  
Set keySet = properties.keySet();  
for(Object key : keySet) {  
    System.out.println(key + "=" + properties.getProperty(key.toString()));  
}

控制台输出

总结

Properties类是.properties配置文件的封装类,需要通过一个输入流的形式读取到Properties实例中。
Properties类就是Map的实现类,所以Map上那些常用的方法也可以在Properties实例上调用。
平时Properties类一般用来加载一些程序的配置文件,例如数据库连接的配置信息 、连接池的配置等

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

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

相关文章

电力系统潮流【牛顿-拉夫逊法】(4节点、5节点、6节点、9节点)(Matlab代码实现)

目录 1 概述 2 电力系统潮流计算概述 2.1 电力潮流发展进程 2.2牛顿拉夫逊法潮流计算 3 仿真结果 4 Matlab代码及文章讲解 📋📋📋本文目录如下:⛳️⛳️⛳️ ​ 1 概述 最初,电力系统潮流计算是通过人工手算的。后…

Java内存区域与内存分配策略

java很聪明,它将手动改为自动,把内存的控制权交给了虚拟机,下面我们就来探究一下JVM是怎么进行自动内存管理的。 手动内存管理分为两部分:给对象分配内存和回收分配给对象的内存。 一、运行时数据区域 线程公有 在运行时数据区中…

基础入门 - SpringBoot 底层注解

目录 1、SpringBoot特点 1.1、依赖管理 1.2、自动配置 2、容器功能 2.1、组件添加 1、Configuration Spring Boot 在底层 Configuration 的两个配置 2、Import 3、Conditional 2.2、原生配置文件引入 1、ImportResource 2.3、配置绑定 1、ConfigurationProperties …

前端开发踩坑笔记(2022-11)

文章目录1、Mac上SourceTree更新已删除的远端分支和tag2、echarts x轴文字显示不全(解决方案)3、如何渲染多行多列的表格(非固定的行数和列数)4、umy-ui标题过长或内容过长时的处理5、dateRange的时间选择只能选择一个周6、如何将…

Servlet API 详解

目录 一、HttpServlet ① init() 方法 ② service() 方法 ③ destroy() 方法 ④ doGet()方法 ⑤ doPost()方法 ⑥ doPut/deDelete/doOptions 常见面试题: 请你谈谈Servlet的生命周期 二、Http请求:HttpServletRequest 1. 获取请求行信息 2. 获…

一个redux使用案例模板

目录 redux 纯函数和高阶函数: redux 开发工具使用 react-redux redux 1. 结构: count--index.jsx import React, { Component } from react import store from ../../redux/store import { acDecrement,acIncrement,acAsyncIncrement } from ../..…

不会向上管理的人,做不好项目经理和PMO【附具体行动清单】

在职场中,向上管理基本是最重要的一件事儿,升职涨薪奖金都离不开向上管理!当你的向上管理做得好,机会都会迎面扑来。 你是不是也遇到过被领导批评时,感到非常委屈或愤怒,情绪经常被领导左右,那…

Three.js一学就会系列:02 画线

系列文章目录 Three.js一学就会系列:01 第一个3D网站 文章目录系列文章目录[Three.js一学就会系列:01 第一个3D网站](https://blog.csdn.net/u012551928/article/details/128205373)前言一、省略部分二、使用方法创建一个场景创建一个透视摄像机将渲染器…

详解CSS层叠上下文(解析z-index不生效的原因)

为什么会有层叠上下文 在CSS2.1规范中,每个盒模型的位置是三维的,分别是平面画布上的X轴,Y轴以及表示层叠的Z轴。一般情况下,元素在页面上沿X轴Y轴平铺,我们察觉不到它们在Z轴上的层叠关系。而一旦元素发生堆叠&#x…

查询网站的谷歌PR权重复杂吗?查询谷歌PR权重最简单的方法

查询网站的谷歌PR权重复杂吗?用对方法一点也不复杂哦! 查询谷歌PR权重最简单的方法——用网站批量查询工具。 网站批量查询工具根据网站的域名可以查询到网站的权重值、网站信息、域名信息、域名备案情况、域名是否安全,来作为网站数据分析的参考。 具体…

C语言基础7:结构体类型、声明、成员类型、定义、初始化、成员访问、传参

文章目录C语言基础7:结构体类型、声明、成员类型、定义、初始化、成员访问、传参1. 结构体类型的声明1.1 结构体的基础知识1.2 结构体的声明1.3 结构体成员的类型1.4 结构体变量的定义和初始化2. 结构体成员访问4. 结构体传参C语言基础7:结构体类型、声明…

SAP S4HANA MM模块后台配置详解

目录 1. 常规设置 1.1 定义国家 1.2.计量单位配置 1.3.货币设置 1.4.维护日历 1.4.1 概念及功能说明 1.4.2 业务示例 1.4.3 配置步骤 2. 企业结构 2.1 定义和分配公司 2.2 设定评估级别、定义/分配工厂 2.2.1. 概念及功能说明 2.2.1. 业务示例 2.2.2. 配置步…

java 八股文

java 八股文 java篇 java 面向对象有哪些特征 封装 多态和继承 arrayList 和 LinkedList 的区别 数据结构不同,一个是数组一个是链表 arrayList 适合 随机访问 读多,插入和删除少 LinkedList 适合插入 和删除 多,按次序遍历的情况 再…

数据结构实验-折半插入排序-双向冒泡排序

目录 分析: 折半插入排序 双向冒泡排序 折半插入排序 思想: 代码 运行结果 双向冒泡排序 代码 运行结果 分析: 折半插入排序 折半插入排序,折半插入排序是在直接插入的改进,通过折半查找得到插入位置&#xf…

java自定义类加载器来加载本地class文件,用demo来解析类加载的双亲委派机制、沙箱机制、打破双亲委派机制

1、首先将class文件放入指定本地目录下 2、编写自定义类加载器demo代码来加载class文件 /*** author WuSong* version 1.0* date 2022/12/7 12:07* description*/ public class MyClassLoaderTest {/*** 1:继承ClassLoader类* 2:重写findClass方法*/sta…

2023最新扫码连wifi-扫码挪车-聚合CPS返利多合一小程序源码

2023最新扫码连wifi-扫码挪车-聚合CPS返利多合一系统 系统特点: 目前已接入的 CPS 渠道: 充值:话费充值、电费充值、影视会员充值、会员卡券充值 本地团购:联联周边游 电商平台:京东、拼多多、唯品会、淘宝、抖音美团:外卖、闪购、酒店、到店、优选饿了么:外卖、商超 出行服务:…

高压放大器在压电驱动器的机翼除冰方法研究中的应用

实验名称:高压放大器基于压电驱动器的机翼除冰方法研究 研究方向:压电效应、多普勒激光测振 实验原理:多普勒激光测振仪是基于多普勒激光测振原理工作的,当四边固支的矩形板通过驱动器激振起来时,通过激光扫描铝板上的…

知识图谱-KGE-语义匹配-双线性模型(打分函数用到了双线性函数)-2012:LFM(Latent Factor Model)

【paper】 A latent factor model for highly multi-relational data 【简介】 这篇文章是法国的研究团队发表在 NIPS 2012 上的文章,还挂了 Antoine Bordes 的名字。文章提出了 LFM(Latent Factor Model),主要贡献有两点&#x…

机床测头应用一:仿形加工功能,降低废品率

机床测头是一种可安装在大多数数控机床上,并在加工循环中自动对工件的尺寸及位置进行测量的装置,使用合适的测量程序,还可以根据测量结果实现自动刀路补偿,可以保证“第一件和第一百件尺寸一致”,是批量生产中不可缺少…

PLC程序实例三:ModBusRTU客户端编程实例与测试方法

一、需求描述 1、设备作为ModBusRTU服务端时,需要给出对应的测试方法,即 PLC 作为主站,设备作为从站使用(本文编写的是PLC主站程序) 2、业务与上一篇文章ModBusTCP网络触发业务逻辑一致,描述如下&#xf…