public class TestProperties {

    /**
*
* @Title: printAllProperty
* @Description: 输出所有配置信息
* @param props
* @return void
* @throws
*/
private static void printAllProperty(Properties props)
{
@SuppressWarnings("rawtypes")
Enumeration en = props.propertyNames();
while (en.hasMoreElements())
{
String key = (String) en.nextElement();
String value = props.getProperty(key);
System.out.println(key + " : " + value);
}
} /**
* 根据key读取value
*
* @Title: getProperties_1
* @Description: 第一种方式:根据文件名使用spring中的工具类进行解析
* filePath是相对路劲,文件需在classpath目录下
* 比如:config.properties在包com.test.config下,
* 路径就是com/test/config/config.properties
*
* @param filePath
* @param keyWord
* @return
* @return String
* @throws
*/
public static String getProperties_1(String filePath, String keyWord){
Properties prop = null;
String value = null;
try {
// 通过Spring中的PropertiesLoaderUtils工具类进行获取
prop = PropertiesLoaderUtils.loadAllProperties(filePath);
// 根据关键字查询相应的值
value = prop.getProperty(keyWord);
} catch (IOException e) {
e.printStackTrace();
}
return value;
} /**
* 读取配置文件所有信息
*
* @Title: getProperties_1
* @Description: 第一种方式:根据文件名使用Spring中的工具类进行解析
* filePath是相对路劲,文件需在classpath目录下
* 比如:config.properties在包com.test.config下,
* 路径就是com/test/config/config.properties
*
* @param filePath
* @return void
* @throws
*/
public static void getProperties_1(String filePath){
Properties prop = null;
try {
// 通过Spring中的PropertiesLoaderUtils工具类进行获取
prop = PropertiesLoaderUtils.loadAllProperties(filePath);
printAllProperty(prop);
} catch (IOException e) {
e.printStackTrace();
}
} /**
* 根据key读取value
*
* @Title: getProperties_2
* @Description: 第二种方式:使用缓冲输入流读取配置文件,然后将其加载,再按需操作
* 绝对路径或相对路径, 如果是相对路径,则从当前项目下的目录开始计算,
* 如:当前项目路径/config/config.properties,
* 相对路径就是config/config.properties
*
* @param filePath
* @param keyWord
* @return
* @return String
* @throws
*/
public static String getProperties_2(String filePath, String keyWord){
Properties prop = new Properties();
String value = null;
try {
// 通过输入缓冲流进行读取配置文件
InputStream InputStream = new BufferedInputStream(new FileInputStream(new File(filePath)));
// 加载输入流
prop.load(InputStream);
// 根据关键字获取value值
value = prop.getProperty(keyWord);
} catch (Exception e) {
e.printStackTrace();
}
return value;
} /**
* 读取配置文件所有信息
*
* @Title: getProperties_2
* @Description: 第二种方式:使用缓冲输入流读取配置文件,然后将其加载,再按需操作
* 绝对路径或相对路径, 如果是相对路径,则从当前项目下的目录开始计算,
* 如:当前项目路径/config/config.properties,
* 相对路径就是config/config.properties
*
* @param filePath
* @return void
* @throws
*/
public static void getProperties_2(String filePath){
Properties prop = new Properties();
try {
// 通过输入缓冲流进行读取配置文件
InputStream InputStream = new BufferedInputStream(new FileInputStream(new File(filePath)));
// 加载输入流
prop.load(InputStream);
printAllProperty(prop);
} catch (Exception e) {
e.printStackTrace();
}
} /**
* 根据key读取value
*
* @Title: getProperties_3
* @Description: 第三种方式:
* 相对路径, properties文件需在classpath目录下,
* 比如:config.properties在包com.test.config下,
* 路径就是/com/test/config/config.properties
* @param filePath
* @param keyWord
* @return
* @return String
* @throws
*/
public static String getProperties_3(String filePath, String keyWord){
Properties prop = new Properties();
String value = null;
try {
InputStream inputStream = TestProperties.class.getResourceAsStream(filePath);
prop.load(inputStream);
value = prop.getProperty(keyWord);
} catch (IOException e) {
e.printStackTrace();
}
return value;
} /**
* 读取配置文件所有信息
*
* @Title: getProperties_3
* @Description: 第三种方式:
* 相对路径, properties文件需在classpath目录下,
* 比如:config.properties在包com.test.config下,
* 路径就是/com/test/config/config.properties
* @param filePath
* @return
* @throws
*/
public static void getProperties_3(String filePath){
Properties prop = new Properties();
try {
InputStream inputStream = TestProperties.class.getResourceAsStream(filePath);
prop.load(inputStream);
printAllProperty(prop);
} catch (IOException e) {
e.printStackTrace();
}
} public static void main(String[] args) {
// 注意路径问题
String properties_1 = getProperties_1("com/test/config/config.properties", "wechat_appid");
System.out.println("wechat_appid = " + properties_1);
getProperties_1("com/test/config/config.properties");
System.out.println("*********************************************");
// 注意路径问题
String properties_2 = getProperties_2("configure/configure.properties", "jdbc.url");
System.out.println("jdbc.url = " + properties_2);
getProperties_2("configure/configure.properties");
System.out.println("*********************************************");
// 注意路径问题
String properties_3 = getProperties_3("/com/test/config/config.properties", "wechat_appid");
System.out.println("wechat_appid = " + properties_3);
getProperties_3("/com/test/config/config.properties");
}
}

public class TestProperties {            /**     *      * @Title: printAllProperty        * @Description: 输出所有配置信息       * @param props     * @return void       * @throws     */    private static void printAllProperty(Properties props)      {          @SuppressWarnings("rawtypes")          Enumeration en = props.propertyNames();          while (en.hasMoreElements())          {              String key = (String) en.nextElement();              String value = props.getProperty(key);              System.out.println(key + " : " + value);          }      }
    /**     * 根据key读取value     *      * @Title: getProperties_1        * @Description: 第一种方式:根据文件名使用spring中的工具类进行解析       *                  filePath是相对路劲,文件需在classpath目录下     *                   比如:config.properties在包com.test.config下,      *                路径就是com/test/config/config.properties         *               * @param filePath      * @param keyWord           * @return     * @return String       * @throws     */    public static String getProperties_1(String filePath, String keyWord){        Properties prop = null;        String value = null;        try {            // 通过Spring中的PropertiesLoaderUtils工具类进行获取            prop = PropertiesLoaderUtils.loadAllProperties(filePath);            // 根据关键字查询相应的值            value = prop.getProperty(keyWord);        } catch (IOException e) {            e.printStackTrace();        }        return value;    }        /**     * 读取配置文件所有信息     *      * @Title: getProperties_1        * @Description: 第一种方式:根据文件名使用Spring中的工具类进行解析       *                  filePath是相对路劲,文件需在classpath目录下     *                   比如:config.properties在包com.test.config下,      *                路径就是com/test/config/config.properties     *                   * @param filePath      * @return void       * @throws     */    public static void getProperties_1(String filePath){        Properties prop = null;        try {            // 通过Spring中的PropertiesLoaderUtils工具类进行获取            prop = PropertiesLoaderUtils.loadAllProperties(filePath);            printAllProperty(prop);        } catch (IOException e) {            e.printStackTrace();        }    }        /**     * 根据key读取value     *      * @Title: getProperties_2        * @Description: 第二种方式:使用缓冲输入流读取配置文件,然后将其加载,再按需操作     *                    绝对路径或相对路径, 如果是相对路径,则从当前项目下的目录开始计算,      *                  如:当前项目路径/config/config.properties,      *                  相对路径就是config/config.properties        *                * @param filePath     * @param keyWord     * @return     * @return String       * @throws     */    public static String getProperties_2(String filePath, String keyWord){        Properties prop = new Properties();        String value = null;        try {            // 通过输入缓冲流进行读取配置文件            InputStream InputStream = new BufferedInputStream(new FileInputStream(new File(filePath)));            // 加载输入流            prop.load(InputStream);            // 根据关键字获取value值            value = prop.getProperty(keyWord);        } catch (Exception e) {            e.printStackTrace();        }        return value;    }        /**     * 读取配置文件所有信息     *      * @Title: getProperties_2        * @Description: 第二种方式:使用缓冲输入流读取配置文件,然后将其加载,再按需操作     *                    绝对路径或相对路径, 如果是相对路径,则从当前项目下的目录开始计算,      *                  如:当前项目路径/config/config.properties,      *                  相对路径就是config/config.properties        *                * @param filePath     * @return void     * @throws     */    public static void getProperties_2(String filePath){        Properties prop = new Properties();        try {            // 通过输入缓冲流进行读取配置文件            InputStream InputStream = new BufferedInputStream(new FileInputStream(new File(filePath)));            // 加载输入流            prop.load(InputStream);            printAllProperty(prop);        } catch (Exception e) {            e.printStackTrace();        }    }        /**     * 根据key读取value     *      * @Title: getProperties_3        * @Description: 第三种方式:     *                    相对路径, properties文件需在classpath目录下,      *                  比如:config.properties在包com.test.config下,      *                  路径就是/com/test/config/config.properties      * @param filePath     * @param keyWord     * @return     * @return String       * @throws     */    public static String getProperties_3(String filePath, String keyWord){        Properties prop = new Properties();        String value = null;        try {            InputStream inputStream = TestProperties.class.getResourceAsStream(filePath);            prop.load(inputStream);            value = prop.getProperty(keyWord);        } catch (IOException e) {            e.printStackTrace();        }        return value;    }        /**     * 读取配置文件所有信息     *      * @Title: getProperties_3        * @Description: 第三种方式:     *                    相对路径, properties文件需在classpath目录下,      *                  比如:config.properties在包com.test.config下,      *                  路径就是/com/test/config/config.properties      * @param filePath     * @return     * @throws     */    public static void getProperties_3(String filePath){        Properties prop = new Properties();        try {            InputStream inputStream = TestProperties.class.getResourceAsStream(filePath);            prop.load(inputStream);            printAllProperty(prop);        } catch (IOException e) {            e.printStackTrace();        }    }            public static void main(String[] args) {        // 注意路径问题        String properties_1 = getProperties_1("com/test/config/config.properties", "wechat_appid");        System.out.println("wechat_appid = " + properties_1);        getProperties_1("com/test/config/config.properties");        System.out.println("*********************************************");        // 注意路径问题        String properties_2 = getProperties_2("configure/configure.properties", "jdbc.url");        System.out.println("jdbc.url = " + properties_2);        getProperties_2("configure/configure.properties");        System.out.println("*********************************************");        // 注意路径问题        String properties_3 = getProperties_3("/com/test/config/config.properties", "wechat_appid");        System.out.println("wechat_appid = " + properties_3);        getProperties_3("/com/test/config/config.properties");    }}

获取.properties配置文件属性值的更多相关文章

  1. SpringBoot基础学习(二) SpringBoot全局配置文件及配置文件属性值注入

    全局配置文件 全局配置文件能够对一些默认配置值进行修改.SpringBoot 使用一个名为 application.properties 或者 application.yaml的文件作为全局配置文件, ...

  2. spring Controller 层注解获取 properties 里面的值

    前言:最近在做一个项目,想要在 controller 层直接通过注解 @Value("")来获取 properties 里面配置的属性. 这个其实和 springmvc.sprin ...

  3. Struts2学习:Action获取properties文件的值

    配置文件路径: 配置内容: 方法一: Action内被调用的函数添加下段代码: Properties props = new Properties(); props.load(UploadFileAc ...

  4. java jeesite.properties配置文件属性提取

    package com.thinkgem.jeesite.common.config; import java.io.UnsupportedEncodingException; import java ...

  5. winform中获取Properties窗口的值.

    我写这个工具,主要是多次在将自己的代码和别人代码做对比时,不想繁琐地用眼看他设置的和自己设置的哪里不一样. using System; using System.Collections.Generic ...

  6. SharePoint 2013 开发——获取用户配置文件属性内容(User Profile)

    博客地址:http://blog.csdn.net/FoxDave 本篇我们应用SharePoint CSOM(.NET)来读取用户配置文件的信息,个人开始逐渐倾向于客户端模型,因为不用远程登录到 ...

  7. sharepoint 2013 更改用户配置文件属性值的方法 modify user profile

    在此前写了两篇文章sharepoint 的UserProfile博客 sharepoint 2010 获取用户信息UserProfile方法 sharepoint 2010 怎样用SocialComm ...

  8. 获取properties配置

    1.      使用@Value @Value("${swagger.enable}") 使用Spring的PropertyPlaceholderConfigurer关联 @Val ...

  9. 如何在springboot中读取自己创建的.properties配置的值

    在实体类里面加上 @PropertySource("classpath:/robot_config.properties") robot_config.properties // ...

随机推荐

  1. P1616疯狂的采药 完全背包

    题目背景 此题为纪念 LiYuxiang 而生. 题目描述 LiYuxiang 是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师.为此,他想拜附近最有威望的医师为师.医师为了判断他的资质,给他出了 ...

  2. C#设计模式之19-观察者模式

    观察者模式(Observer Pattern) 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/423 访问. 观察者模式 ...

  3. C#LeetCode刷题之#507-完美数(Perfect Number)

    问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/3879 访问. 对于一个 正整数,如果它和除了它自身以外的所有正因 ...

  4. c++排序二叉树的出现的私有函数讨论,以及二叉树的删除操作详解

    c++排序二叉树的出现的私有函数讨论, 以及二叉树的删除操作详解 标签(空格分隔): c++ 前言 我在c++学习的过程中, 最近打了一个排序二叉树的题目,题目中出现了私有函数成员,当时没有理解清楚这 ...

  5. STL函数库的应用第一弹——数据结构(队列)

    队列是什么? 队列是一种特殊的线性表,特殊之处在于它只允许在表的前端进行删除操作,而在表的后端进行插入操作. 和栈一样,队列是一种操作受限制的线性表.进行插入操作的端称为队尾,进行删除操作的端称为队头 ...

  6. 详解Python Graphql

    前言 很高兴现在接手的项目让我接触到了Python Graphql,百度上对其介绍相对较少也不够全面,几乎没有完整的中文文档,所以这边也借此机会学习一下Graphql. 什么是Graphql呢? Gr ...

  7. 【AI 算法评测】BERT 对 NLP 效果的改善,不负众望!

    AI 在各大领域的发展有目共睹,而作为人工智能皇冠上的明珠--自然语言处理却成果了了,大多实现或者以半成品的形式躺在实验室中,或者仅仅作为某个产品的辅助功能.而这一情况在 BERT 出现后出现了很大的 ...

  8. mac启动 Apache JMeter 5.3 语言选择中文界面出现乱码 问题解决

    问题重现 问题修复 出现这个问题,是因为,语言与外观不兼容导致,语言选“中文”,外观选“Metal” 细心的你,可能发现,为啥要重启2次呢???第一次设置完语言后,在设置外观,发现菜单不能选择,第二次 ...

  9. JavaScript学习系列博客_11_JavaScript中的for语句

    for循环 - 语法: for(①初始化表达式 ; ②条件表达式 ; ④更新表达式){ ③语句... } - 执行流程: 首先执行①初始化表达式,初始化一个变量,(这里只会执行一次) 然后对②条件表达 ...

  10. OpenStack 服务心跳机制和状态监控

    参考链接: OpenStack服务心跳机制和状态监控 https://blog.csdn.net/qqhappy8/article/details/79304221