Properties 属性操作|学习笔记

简介: 快速学习 Properties 属性操作

开发者学堂课程【Java高级编程Properties 属性操作】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/20/detail/424


Properties 属性操作


内容简介:


1、回顾

2、实现属性的操作方法

3、范例:观察属性的设置和取得

4、范例:将属性内容保存在文件之中

5、范例:读取资源文件


1、回顾

国际化程序讲解的资源文件(*.properties,这类文件的存储结构是按照”key=value‘’ 的形式,这种结构的保存形式与Map集合很相似,但是唯一的区别在于其保存的内容只能够是字符串,所以为了可以方便描述属性的定义。

java.util  包里面提供有 Properties  类型,此类是 Hashtable 的子类。

public class Properties extends, Hashtable . 

1、可以发现在继承 Hashtable 的时候为 Hashtable 中定义的泛型为 Object, Properties 是不需要操作泛型的,因为它能操作的类型只能是 String 类型。

在 Properties 之中如果想要实现属性的操作可以采用如下的方法:

① 设置属性:setProperty(String key, String value)

② 取得属性:getProperty(String key),如果没有指定的key则返回null

③ 取得属性:getProperty(String key, String defaultValue),如果没有指定的 key 则返回默认值

④ 获得属性列表:list(PrintStream out)


2、范例:观察属性的设置和取得

通过代码可以发现 Properties 里面可以像 Map 集合那样进行内容的设置与获取,但是唯一的差别是它只能够操作 String 类型,另外需要注意的是,之所以会提供有 Properties 类还有一个最重要的功能是它可以通过输出流输出属性,也可以使用输入流读取属性内容,而 Map 没有。

 

3、范例:将属性内容保存在文件之中。

通过程序的执行可以发现,的确可以实现资源文件的输入处理,但是如果输出的是中文则自动进行转码处理

 

4、范例:读取资源文件

设置的内容只允许是字符串

图片5.png

图片6.png

Properties 往往用于读取配置资源的信息

最大特点:

使用 properties 外形的最大的特点是可以进行资源内容的输入与输出处理操作但是在实际的开发之中,Properties 往往用于读取配置资源的信息这一点主要是在标准设计之中程序初始化准备的时候使用

 

相关文章
|
2月前
|
存储 自然语言处理 Java
ResourceBundle.getBundle()来读取自定义的properties配置文件
ResourceBundle.getBundle()来读取自定义的properties配置文件
|
8月前
properties加载的几种方式
properties加载的几种方式
|
5天前
|
缓存 编解码 监控
reservedCodecCacheSize属性详解与配置建议
reservedCodecCacheSize属性详解与配置建议
|
12天前
dynamic-datasource动态添加移除数据源
dynamic-datasource动态添加移除数据源
12 0
|
10月前
|
Java 数据库连接 mybatis
Mybatis配置文件之<settings>属性配置元素解析
Mybatis配置文件之<settings>属性配置元素解析
110 0
|
11月前
Properties集合
Properties集合
43 0
|
存储 安全 Java
详细深入的理解Properties集合使用
properties集合使用及Spring依赖注入之properties
82 0
详细深入的理解Properties集合使用
|
XML 存储 安全
一文带你全面了解Properties类
一文带你全面了解Properties类
138 0
一文带你全面了解Properties类
|
Java 测试技术 Apache
实战小技巧16:Properties配置文件自动装载JavaBean
SpringBoot的配置自动装载,使用起来还是很舒爽的,可以非常简单的将properties配置文件的内容,填充到Java bean对象中,如果我们现在是一个脱离于Springboot框架的项目,想实现上面这个功能,可以怎么来做呢?
327 0