应用程序存储的配置

一.属性映射:

1.定义:是一种存放键/值对的存储结构。经常被用来存放配置信息。

2.属性映射的特征:
(1)键值都是字符串。
(2)键和值都很容易读入文件以及读出文件。
(3)用二级表存放默认值。

3.相关属性:
(1)Properties():创建一个空的属性映射。
(2)Properties(Properties default):用一组默认值创建空的属性映射。
(3)String getProperty(String key):获得一个属性映射。返回对应键的字符串,如果键没有在表中出现,返回在默认表中与键对应的字符串。如果键也没有出现在默认表中,则返回null。
(4)String getProperty(String key, String defaultValue):如果没有找到键,返回具有默认值的属性。如果键没有在表中出现,则返回对应键的字符串,或默认字符串。
(5)void load(InputStream in) throws IOException:从输入流中加载一个属性映射。
(6)void store(OutputStream out, String header):将属性映射存放到一个输出流中。
(7)Properties getPropertites():获得全部系统属性。应用系统必须有访问全部系统属性的权限,否则将抛出安全异常。
(8)String getProperty(String key):返回具有给定键名的系统属性。应用程序必须有访问全部系统属性的权限,否则将抛出安全异常。

二.Preference API

1.Properties类能够简化读取和保存配置信息的过程。

2.使用属性文件存在的不足:
(1)配置文件不能存放在用户的主目录中。
(2)没有标准的为配置文件命名的规则。

3.Preferences的中心知识库具有树状结构,每个节点的路径类似于/com/mycompany/myapp。

4.中心知识库的每个节点都有一个用来存放键/值得独立表。用户可以用这张表存放数字、字符串或数组,但不适于存放序列化的对象。

5.为了增加灵活性,系统中有多棵并行的树。每个程序使用者拥有一棵树,同时,系统中还存在一棵树,称为系统树,用于存放
全体用户的公共信息。

6.相关属性:
(1)Preferences userRoot():返回调用应用程序的用户配置信息的根节点。
(2)Preferences systemRoot():返回系统范围的配置信息的根节点。
(3)Preferences node(String path):返回从当前节点经过给定路径可以到达的节点,如果path是绝对路径(以/开头),则从包含信息的树根开始查找这个节点,如果给定的路径不存在这样的节点,则创建它。
(4)Preferences userNodeForPackage(Class c1):
(5)Preferences systemNodeForPackage(Class c1):返回当前用户树或者系统树中的节点,这个节点的绝对路径符合类c1的包名。
(6)String[] Keys():返回属于这个节点的所有键。
(7)String[] get(String key, String defval)
(8)int getInt(String key, int defval)
(9)long getLong(String key, long defval)
(10)float getFloat(String key, float defval)
(11)double getDouble(String key, double defval)
(12)boolean getBoolean(String key, boolean defval)
(13)byte[] getByteArray(String key, byte[] defval):返回与给定键关联的值。如果没有与之关联的值,或者关联值得类型不符合要求,或者配置存储不可用,则返回默认值。
(14)void put(String key, String value)
(15)void putInt(String key, int value)
(16)void putLong(String key, long value)
(17)void putFloat(String key, float value)
(18)void putDouble(String key, double value)
(19)void putBoolean(String key, boolean value)
(20)void putByteArray(String key, byte[] value):将键/值存放在节点中。
(21)void exportSubTree(OutputStream out):将这个节点及子节点的配置信息写到指定流中。
(22)void exportNode(OutputStream out):将这个节点(不包括子节点)配置信息写到指定流中。
(23)void importPreferences(InputStream in):导入指定流中的配置信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值