在复杂功能的系统中,比如已经产品化的系统,各个功能是独立的,并且是可维护的,为了使产品的可可扩展性良好,需要写很多配置文件。把硬件或者中间件的信息都写在文件中便于运维人员进行更改,同时也就避免了研发人员的二次参与。但是产品化的系统,jar包众多。运维人员在修改时去修改jar中的properties就会很麻烦,一方面寻找需要时间,一方面如果研发人员命名jar包不规范,运维人员根本不知道去哪里更新配置。因此,在这种情况下,我们把配置文件都放在tomcat的目录下。这个需要在Catlina.properites中配置文件路径,使服务启动时加载properties文件。
eg:Catlina.properites中
common.loader=${catalina.home}/common/classes,${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar
程序:
String s = System.getProperty("catalina.home");
String path = s+File.separator+"common"+File.separator+"classes"+File.separator+"test.properties";
System.out.println("============="+s+File.separator+"common"+File.separator+"classes"+File.separator+"test.properties");
Properties pps = new Properties();
pps.load(new BufferedInputStream(new FileInputStream(path)));
System.out.println("============="+pps.getProperty("pgmcode"));