Java使用application.property读取文件里面的值

 更新时间:2018年10月11日 11:39:52   作者:潜行的Q  
本文通过实例代码给大家介绍了Java使用application.property读取文件里面的值,需要的朋友可以参考下

自定义工具类PropertyUtil,并在该类的static静态代码块中读取properties文件内容保存在static属性中以供别的程序使用

package com.hafiz.www.util;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.*;
import java.util.Properties;
/**
 * Desc:properties文件获取工具类
 * Created by hafiz.zhang on 2016/9/15.
 */
public class PropertyUtil {
  private static final Logger logger = LoggerFactory.getLogger(PropertyUtil.class);
  private static Properties props;
  static{
    loadProps();
  }
  synchronized static private void loadProps(){
    logger.info("开始加载properties文件内容.......");
    props = new Properties();
    InputStream in = null;
    try {
       <!--第一种,通过类加载器进行获取properties文件流-->
      in = PropertyUtil.class.getClassLoader().getResourceAsStream("jdbc.properties");
       <!--第二种,通过类进行获取properties文件流-->
      //in = PropertyUtil.class.getResourceAsStream("/jdbc.properties");
      props.load(in);
    } catch (FileNotFoundException e) {
      logger.error("jdbc.properties文件未找到");
    } catch (IOException e) {
      logger.error("出现IOException");
    } finally {
      try {
        if(null != in) {
          in.close();
        }
      } catch (IOException e) {
        logger.error("jdbc.properties文件流关闭出现异常");
      }
    }
    logger.info("加载properties文件内容完成...........");
    logger.info("properties文件内容:" + props);
  }
  public static String getProperty(String key){
    if(null == props) {
      loadProps();
    }
    return props.getProperty(key);
  }
  public static String getProperty(String key, String defaultValue) {
    if(null == props) {
      loadProps();
    }
    return props.getProperty(key, defaultValue);
  }
}

说明:这样的话,在该类被加载的时候,它就会自动读取指定位置的配置文件内容并保存到静态属性中,高效且方便,一次加载,可多次使用。

总结

以上所述是小编给大家介绍的Java使用application.property配置文件里面的值,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • 一篇文章弄懂Mybatis中#和$的区别

    一篇文章弄懂Mybatis中#和$的区别

    mybatis为我们提供了两种支持动态sql的语法#{}以及${},两者都是动态的向sql语句中传入需要的参数,下面这篇文章主要给大家介绍了如何通过一篇文章弄懂Mybatis中#和$区别的相关资料,需要的朋友可以参考下
    2021-12-12
  • springMVC的生命周期详解

    springMVC的生命周期详解

    本篇文章主要介绍了springMVC的生命周期详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03
  • Spring框架的JdbcTemplate使用

    Spring框架的JdbcTemplate使用

    它是 Spring 框架中提供的一个对象,是对原始 Jdbc API 对象的简单封装。本文就来介绍一下Spring框架的JdbcTemplate使用,感兴趣的可以了解一下
    2021-09-09
  • java 集合并发操作出现的异常ConcurrentModificationException

    java 集合并发操作出现的异常ConcurrentModificationException

    Map在遍历时候通常 现获得其键值的集合Set,然后用迭代器Iterator来对Map进行遍历。
    2009-06-06
  • Java用split分割含一个或多个空格的字符串案例

    Java用split分割含一个或多个空格的字符串案例

    这篇文章主要介绍了Java用split分割含一个或多个空格的字符串案例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来过来看看吧
    2020-09-09
  • java servlet结合mysql搭建java web开发环境

    java servlet结合mysql搭建java web开发环境

    之前写过一篇 servlet+oracle的文章,但是那是因为公司有可能接那么一个项目,然后我当时也比较闲,所以随便学了下,那玩意是白去研究了,因为公司后面并没接到那项目。
    2015-12-12
  • SpringBoot拦截器实现对404和500等错误的拦截

    SpringBoot拦截器实现对404和500等错误的拦截

    本篇文章主要介绍了SpringBoot拦截器实现对404和500等错误的拦截,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2017-04-04
  • java并发无锁多线程单线程示例详解

    java并发无锁多线程单线程示例详解

    这篇文章主要为大家介绍了java并发无锁多线程单线程示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-07-07
  • Java 8 Time Api 使用方法技巧

    Java 8 Time Api 使用方法技巧

    这篇文章主要介绍了Java 8 Time Api 使用方法技巧,Java 8为Date和Time引入了新的API,以解决旧java.util.Date和java.util.Calendar的缺点,更多相关内容需要的小伙伴可以参考一下
    2022-05-05
  • Java中使用Closeable接口自动关闭资源详解

    Java中使用Closeable接口自动关闭资源详解

    这篇文章主要介绍了Java中使用Closeable接口自动关闭资源详解,Closeable接口继承于AutoCloseable,主要的作用就是自动的关闭资源,其中close()方法是关闭流并且释放与其相关的任何方法,如果流已被关闭,那么调用此方法没有效果,需要的朋友可以参考下
    2023-12-12

最新评论