java 配置文件书写_配置文件的写法(properties类型)

先提出下面两个问题:

问题1:采用什么方式来保存软件配置信息

问题2:怎么保存配置信息

下面就以上两个问题展开讲述:

1.保存配置文件的方法有很多种

A.将配置信息保存在注册表中(如果保存在注册表中对于java的跨平台性是一个破坏,因为不同操作系统的所谓注册表的存储方式是不同的)

B.将配置信息保存在任意类型的文件中,由于Java里有专门提供用于对配置文件读写的类库,所以我们在这里介绍properties类型的配置文件,

注意这里properties只是一个大家公认的配置文件后缀而已,没有什么特别的意义!

(当然还有其他方法,在这里主要介绍properties类型的配置文件)

2.对配置信息的操作无非就两种,从配置文件中读取信息,并将信息赋值给程序中的相应变量,还有就是当软件运行到某一个特定的时候,手动或自

动将软件中的某些信息写入到配置文件中,以便于以后的调用.为了方便的对properties类型的配置文件进行操作,在这里介绍一个Java提供的

一个类:Properties大家可以查看API以了解此类的详细信息.

对于最简单的应用,这里只用到Properties中的三个方法:

1.void load(InputStream inStream)从输入流中读取属性列表(键和元素对)。这个inStream可以有多种取得的方法,这里只介绍一种通过

ClassName.class.getClassLoader().getResourceAsStream()来取得properties文件.通常:ClassName.class.getClassLoader ().getResourceAsStream(““)取得的是

WEB-INF的下级目录,比如ClassName.class.getClassLoader().getResourceAsStream(“db.properties“).在Tomcat中,可以通过增加”../”来取得上层目录

,即WEB-INF目录,这样就可以把properties放在WEB-INF中统一管理。但是WLS不识别”../”。另外一种土办法,就是不返回classLoader,

直接ClassName.class.getResourceAsStream()。然后通过多个”../”(小于6个)来返回相应的上级目录。当然,如果类扩展了HttpServlet,可以通过

getServletContext().getRealPath("/")来取得Web部署目录的绝对路径。

2. String getProperty(String key)用指定的键在此属性列表中搜索属性。

3. Object setProperty(String key, String value)调用 Hashtable 的方法 put。

4.  void   store(OutputStream out, String comments) 以适合使用 load(InputStream) 方法加载到Properties 表中的格式,将此Properties 表中的属性列表(键和元素对)

写入输出流。

在读之前必须要用1方法得到输入流,在写之前必须先建一个到配置文件的输出流作为4的参数,写完后用4方法

处于Singleton设计模式的考虑,建议把整个对配置文件的操作写成一个类,并且将所有变量方法全部设置为静态

ca1bb106d4e8ce35735558c45a9010ac.gif

posted on 2008-12-23 15:27 FINDER 阅读(1809) 评论(0)  编辑  收藏 所属分类: J2SE

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值