在Java中属性操作类是一个很重要的类,而要想明白属性操作类的作用,就必须先要清楚什么是属性文件,在属性文件中含有多个属性,每个属性就是直接用字符串表示出来的"key=value 键/值对", 而如果要想轻松操作这些属性需要使用Properties类完成。
property属性是一种用法类似于实例属性的特殊属性,可以对应于某个方法:
# ############### 定义 ###############
class Foo:
def func(self):
pass
# 定义property属性
@property
def prop(self):
pass
# ############### 调用 ###############
foo_obj = Foo()
foo_obj.func() # 调用实例方法
foo_obj.prop # 调用property属性
编号 | 方法名称 | 类型 | 描述 |
---|---|---|---|
1 | public Properties() | 构造 | 创建一个无默认值的空属性类 |
2 | public Properties(Properties props) | 构造 | 创建一个带有指定默认值的空属性类 |
3 | public String getProperty(String key) | 普通方法 | 根据属性的key取得属性的value,如果没有,将放回null |
4 | public String getProperty(String key, String defaultValue) | 普通方法 | 根据属性的key取得属性的value,如果没有,将返回defaultValue |
5 | public Object setProperty(String key, String value) | 普通方法 | 设置属性 |
6 | public void list(PrintStream out) | 普通方法 | 属性打印 |
7 | public void load(InputStream inStream) | 普通方法 | 将输入流中取出全部的属性内容 |
8 | public void loadFromXML(InputStream in) | 普通方法 | 从XML文件格式中读取内容 |
9 | public void store(OutputStream out, String comments) | 普通方法 | 将属性内容通过输出流输出,同时声明属性的注释内容 |
10 | public void storeToXML(OutputStream os, String comment) | 普通方法 | 以XML文件格式输出属性,默认编码 |
11 | public void storeToXML(OutputStream os, String comment, String encoding) | 普通方法 | 以XML文件格式输出属性,用户指定默认编码 |
实际开发中我们使用Properties的功能类似于存储的数据为Map<String,String>都是字符串的形式
主要使用setProperty()和getProperty()方法设置和获取属性,存储的数据类型都是String
package com.shxt.demo06;
import java.util.Properties;
public class Demo01 {
public static void main(String[] args) {
Properties props = new Properties(); //创建Properties对象
//设置属性
props.setProperty("title","");
props.setProperty("version","v1.0");
props.setProperty("db","MySQL 5.7");
//获取属性
System.out.println("1.title属性存在:"+props.getProperty("title"));
System.out.println("2.name属性不存在:"+props.getProperty("name"));
System.out.println("3.name属性不存在,显示默认值:"+props.getProperty("name",""));
}
}
/*
运行结果:
1.title属性存在:
2.name属性不存在:null
3.name属性不存在,显示默认值:
*/
package com.shxt.demo06;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Properties;
public class Demo03 {
public static void main(String[] args) {
Properties props = new Properties(); //创建Properties对象
//跟磁盘中的文件建立联系
File file = new File("D:/sys.properties");
try {
//读取属性文件
props.load(new FileInputStream(file));
//获取属性
System.out.println("getProperty():"+props.getProperty("title"));
} catch (IOException e) {
e.printStackTrace();
}
}
}
/*
运行结果:
getProperty():
*/
Properties属性类的更多用法我们可以到动力节点在线的免费视频课程继续学习。
提枪策马乘胜追击04-21 20:01
代码小兵92504-17 16:07
代码小兵98804-25 13:57
杨晶珍05-11 14:54