package org.jasig.cas.a4.tools; import java.io.InputStream; import java.net.URL; import java.util.Enumeration; import java.util.HashMap; import java.util.Map; import java.util.Properties; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; public class UtilProperties { private static Map propsCache=new HashMap(); private static Log logger=LogFactory.getLog(UtilProperties.class); public static Properties getProperties(String resourceName){ Properties props=(Properties)propsCache.get(resourceName); UtilProperties utilProperties = new UtilProperties(); if(props==null){ props = new Properties(); ClassLoader loader=null; if (loader == null) { try { loader = Thread.currentThread().getContextClassLoader(); } catch (SecurityException e) { loader = utilProperties.getClass().getClassLoader(); } } URL url=loader.getSystemResource(resourceName); InputStream in = null; try { in = url.openStream(); props.load(in); } catch (Exception e) { try{ in=utilProperties.getClass().getResourceAsStream("/"+resourceName); props.load(in); }catch(Exception e1){ logger.error(" Couldn't find the URL: " + resourceName+e1); return props; } } } return props; } public static String getProperty(String resourceName,String key,String defaultValue){ Properties props=getProperties(resourceName); return props.getProperty(key, defaultValue); } public static String getProperty(String resourceName,String key){ return getProperty(resourceName,key, ""); } public static Map getMatchPropertys(String resourceName,String inkey){ Map result = new HashMap(); Properties props=(Properties)propsCache.get(resourceName); UtilProperties utilProperties = new UtilProperties(); if(props==null){ props = new Properties(); ClassLoader loader=null; if (loader == null) { try { loader = Thread.currentThread().getContextClassLoader(); } catch (SecurityException e) { loader = utilProperties.getClass().getClassLoader(); } } URL url=loader.getSystemResource(resourceName); InputStream in = null; try { in = url.openStream(); props.load(in); } catch (Exception e) { try{ in=utilProperties.getClass().getResourceAsStream("/"+resourceName); props.load(in); }catch(Exception e1){ logger.error(" Couldn't find the URL: " + resourceName+e1); return result; } } } Enumeration en = props.propertyNames(); while (en.hasMoreElements()) { String key = (String) en.nextElement(); if(key.contains(inkey)){ String Property = props.getProperty (key); result.put(key, props.getProperty(key, "")); } } return result; } }
调用:
private final String baseuri = UtilProperties.getProperty("runtime.properties", "cu.cloud.v1");
相关推荐
2. **创建properties工具类** 一个基本的`PropertiesUtil`工具类可能包含以下方法: - `loadProperties`: 加载`.properties`文件到`Properties`对象。 - `getProperty`: 根据键获取值。 - `setProperty`: 设置或...
针对这个问题,开发者们创建了`CommentedProperties`这样的工具类,以保留属性文件中的注释信息。 `CommentedProperties`是基于Java的自定义Properties扩展,它的核心功能在于加载和保存文件时能够识别并保留注释。...
在Java编程中,Properties类是用于处理属性文件的关键工具,它...通过创建这样的Properties工具类,我们可以简化与属性文件交互的代码,提高代码的可读性和可维护性。在实际项目中,这样的工具类是非常常见且实用的。
java对properties的操作工具类 属性文件
1.OutputOrderProperties p = new OutputOrderProperties(); 2.FileInputStream fs = new FileInputStream("文件路径"); 3.p.load(new InputStreamReader(fs, "utf-8")); 4.p.put("jdbc.name", dbConfig.getJdbcName...
下载了就可以直接用。默认路径在项目随意source目录下,获取时直接PropertiesUtil.getInstance().getPropertyValue("xx.properties", "value");
本篇文章将探讨如何设计一个`properties`读取工具类,以便高效、灵活地从这些文件中读取和管理配置参数。 首先,我们需要创建一个`PropertiesUtil`类,它将包含读取`properties`文件的核心方法。这个工具类通常会有...
此工具类只用于Java后端在操作Properties文件的时候写的工具类,方便properties文件的存取操作
在Java编程中,`Property`工具类和`Properties`文件工具类是处理配置文件的关键组件。这些工具类帮助开发者读取、写入以及管理应用程序的配置信息,通常以`.properties`文件的形式存在。`.properties`文件是一种键值...
Java读取、修改utils.properties工具类,可直接拿去用。
通过程序生成properties文件的工具类,并可根据添加顺序生成,可添加注释,调用步骤如下: 1.OutputOrderProperties p = new OutputOrderProperties(); 2.FileInputStream fs = new FileInputStream("文件路径"); 3....
`RabbitmqUtil` 是一个专门为Java开发者设计的工具类,简化了与RabbitMQ交互的复杂过程,使得开发者能够更快速、更方便地发送和接收消息。 首先,我们来详细了解一下`RabbitmqUtil`工具类的主要功能: 1. **连接...
总之,“Properties文件比较工具”是Java开发中一个实用的小型应用,它利用了Java标准库提供的`Properties`类,为开发者提供了便利,提高了工作效率。通过分析`diffProperties.java`和`property.java`源代码,我们...
另外,Properties类还可以与其他工具类结合使用,例如ResourceBundle,以实现国际化(i18n)功能。通过不同语言的.properties文件,我们可以为不同地区的用户提供本地化的消息。 总结起来,Properties类是Java中...
java连接SqlServer完整代码,工具类,jdbc JDBC工具类的构建 1.资源释放 见https://mp.csdn.net/postedit/86577443 2.驱动防二次注册 ``` Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); //...
这个工具类的创建旨在简化邮件处理的复杂性,使开发者能够便捷地集成邮件功能。以下是对JavaMail工具类及其相关知识点的详细说明: 1. **JavaMail API**: JavaMail API 是Java平台上的标准邮件接口,提供了发送、...
Java 读取、获取配置文件.properties 中的数据有多种方法,包括使用 Properties 类、封装的 Properties 工具类和其他方法。在实际应用中,我们可以根据需要选择合适的方法来读取 Properties 文件。
接下来是`PropertiesUtil.java`,这个工具类专注于处理传统的`.properties`配置文件。Properties文件是Java内置支持的一种格式,通常用于存储键值对。`PropertiesUtil`可能包含以下方法: 1. 加载Properties文件:...