加载tomcat下的属性文件
来源:互联网 发布:梦想与现实 知乎 编辑:程序博客网 时间:2024/05/22 06:30
//加载apache-tomcat-7.0.28\conf\common下所有的properties属性文件import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;import java.io.PrintStream;import java.util.ArrayList;import java.util.Iterator;import java.util.List;import java.util.Properties;public class ConfigLoader{ private Properties pro = new Properties(); private static final String MX_COMMON_PATH = "/conf/common"; private static final String CONFIG_ABSOLUTE_PATH = "mx.config.base.path"; private static final String[] fileTypes = { ".properties", ".xml" }; private static ConfigLoader instance; private ConfigLoader() { init(); } private void init() { String path = System.getProperty("catalina.home"); if ((null == path) || (path.isEmpty())) { System.out.println("ERROR: !!! catalina home path is empty, please start the tomcat."); return; } path = path + "/conf/mx-common"; System.out.println(path); this.pro = new Properties(); List ins = new ArrayList(); try { File root = new File(path); for (File file : root.listFiles()) { System.out.println(file.getName()); if (isValidFileType(file.getName())) { InputStream in = new FileInputStream(file); ins.add(in); this.pro.load(in); } } this.pro.put("mx.config.base.path", path); } catch (Exception e) { Iterator i$; InputStream in; e.printStackTrace(); } finally { try { Iterator i$; InputStream in; for (InputStream in : ins) if (in != null) in.close(); } catch (IOException e) { e.printStackTrace(); } } } public static synchronized ConfigLoader getInstance() { if (instance == null) { instance = ConfigLoaderHolder.instance; } return instance; } public String getProperty(String key) { return getProperty(key, false); } public String getProperty(String key, boolean isReload) { if (isReload) { init(); } if (this.pro.containsKey(key)) { return this.pro.getProperty(key); } System.out.println("ERROR: !!! Not found key:[" + key + "]"); return ""; } public boolean containsKey(String key) { return this.pro.containsKey(key); } private boolean isValidFileType(String name) { for (String type : fileTypes) { if (name.endsWith(type)) { return true; } } return false; } private static class ConfigLoaderHolder { private static ConfigLoader instance = new ConfigLoader(null); }}
用法:
String str = ConfigLoader.getInstance().getProperty("属性名称").toString();
0 0
- 加载tomcat下的属性文件
- tomcat会自动加载jakarta-tomcat-5.0\conf\Catalina\localhost目录下的文件吗?
- spring的属性加载器,加载properties文件中的属性
- 关于tomcat下spring无法加载依赖jar中properties文件的原因分析
- tomcat下lib的加载顺序
- 6、Eclipse下加载tomcat的配置
- tomcat启动时加载文件的顺序
- LoadProperties:加载属性文件
- 加载属性资源文件
- 应用Tomcat的WebappClassLoader加载指定目录的jar文件
- tomcat下的静态资源文件压缩
- tomcat下的文件及其用途
- tomcat下的文件及其用途
- tomcat下的server.xml文件解读
- Tomcat根目录下各个文件的作用
- Linux下启动tomcat的脚本文件
- DOS下COM文件的加载过程
- RHEL 下加载NTFS 格式的文件
- python相关
- iOS webView与H5的交互(返回页面的处理)
- 路由改过会恢复默认值
- [DCT]MT6589 DCT配置GPIO的设置/初始化/编译
- 字符串 格式对齐
- 加载tomcat下的属性文件
- 04-CoreData Stack技术栈堆手动实现
- LeetCode:Merge Two Sorted Lists
- spring context标签
- 互联网自由工作者如何提高工作效率?
- fir.im Weekly - 如何写出零 bug 的代码
- pppcloud云主机内LINUX用户安全管理1
- 采用FLAG_ACTIVITY_CLEAR_TOP退出整个程序(多activity)
- 复习(数据结构):动态数组:c++_stl写法