java读取项目根路径下和任意磁盘位置下的properties文件

Posted 滴滴滴滴哒

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java读取项目根路径下和任意磁盘位置下的properties文件相关的知识,希望对你有一定的参考价值。

1.读取项目根路径下的properties文件比较简单也是比较常见的一种操作。

具体代码如下:

package com.xuanen.util;

import java.util.Properties;

import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.support.PropertiesLoaderUtils;

public class PropertyUtil {

	private static Properties propertie;

	private static Logger logger = Logger.getLogger(PropertyUtil.class);
	
	
	/**
	 * 读取配置文件
	 */
	public static Properties init()
    {
        if (propertie == null)
        {
            propertie = new Properties();
            try
            {
                propertie = PropertiesLoaderUtils.loadProperties(new ClassPathResource("common.properties"));
            }
            catch (Exception ex)
            {
                logger.error(ex.getMessage());
            }
        }
        return propertie;
    }
	
	/**
	 * 获取solr的config路径
	 */
	public static String getDateConfigXMLPath()
    {
        propertie = init();
        String path = propertie.getProperty("dateConfigPath");
        return path;
    }
}

2.读取磁盘上任意位置的properties文件不常见,但是也要掌握。代码如下

public class GetSolrCreateDate
{
    // 获取dataimport.properties索引的创建时间的配置文件
  //此处可替换成磁盘任意位置的properties文件位置 例如:E:/dataimport.properties

private static String path = PropertyUtil.getDateConfigXMLPath().replace("data-config.xml", "") + "dataimport.properties"; private static Properties propertie; private static Logger logger = Logger.getLogger(PropertyUtil.class); /** * 读取配置文件 */ public static Properties init() { if (propertie == null) { propertie = new Properties(); try { if (FileUtils.isExcite(path)){ propertie = PropertiesLoaderUtils.loadProperties(new PathResource(path)); } } catch (Exception ex) { logger.error(ex.getMessage()); } } return propertie; } // 根据表名获取索引改变的时间 public static String getCreateDateByTableName(String tableName) { propertie = init(); String data = propertie.getProperty(tableName+".last_index_time"); if (StringUtils.isNotBlank(data)) { return data; } return null; } }

  

以上是关于java读取项目根路径下和任意磁盘位置下的properties文件的主要内容,如果未能解决你的问题,请参考以下文章

IDEA 相对路径读取项目中的文件

SpringBoot配置文件——加载顺序

springboot 加载配置文件顺序

springboot 加载配置文件顺序

关于web工程中java类如何获取webapp路径下的文件

java项目获取根路径(web项目和application项目的区分)