Propertiesprops;
//这里的props
publicPropertiesgetProps(){
returnthis.props;
}
publicvoidparse(Stringfilename)throwsException{
//将我们的解析器对象化
ConfigParserhandler=newConfigParser();
//获取SAX工厂对象
SAXParserFactoryfactory=SAXParserFactory.newInstance();
factory.setNamespaceAware(false);
factory.setValidating(false);
//获取SAX解析
SAXParserparser=factory.newSAXParser();
//得到配置文件myenv.xml所在目录.tomcat中是在WEB-INF/classes
//下例中BeansConstants是用来存放xml文件中配置信息的类,可以自己代替或定义
URLconfURL=BeansConstants.class.getClassLoader().getResource(filename);
try
{
//将解析器和解析对象myenv.xml联系起来,开始解析
parser.parse(confURL.toString(),handler);
//获取解析成功后的属性以后我们其他应用程序只要调用本程序的props就可以提取出属性名称和值了
props=handler.getProps();
}finally{
factory=null;
parser=null;
handler=null;
}
}
}
由于我们的XML文件是使用最简单的形式,因此解析器相对简单,但是这已经足够对付我们的配置文件了.
判断一个程序
系统的先进性,我们先看看他的配置文件,如果还在使用老套的xxx=123这样类似.ini的文件,我们也许会微微一笑,他又落伍了....