1. 程式人生 > >java實時動態獲取properties檔案的內容

java實時動態獲取properties檔案的內容

用“ClassLoader.getResourceAsStream”讀取properties檔案時會發現修改了.properties後,即使重新執行,讀入的仍為修改前的引數。此問題的原因在於ClassLoader.getResourceAsStream讀入後,會將.properties儲存在快取中,重新執行時會從快取中讀取,而不是再次讀取.properties檔案。

動態讀取的程式碼如下:

import java.util.Properties;

/**
 * 實時動態獲取properties檔案的值
 * @author Administrator
 *
 */
public class demo01 {
	/**
	 * 根據配置變數實時獲取配置檔案中的值
	 * @param key 配置名
	 * @param filePath 配置檔案路徑名,例如:test.properties
	 * @return 配置值
	 */
	public static String getCurrentPropertiesValue(String key,String filePath){
		String value="";
		Properties p = new Properties();
		try {
			//非實時動態獲取
			//p.load(new InputStreamReader(this.class.getClassLoader().getResourceAsStream(filePath), "UTF-8"));
			//下面為動態獲取
			String path = Thread.currentThread().getContextClassLoader().getResource("").getPath();
			InputStream is = new FileInputStream(path +File.separator+ filePath);
			p.load(is);
			value=p.getProperty(key);
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
		return value;
	}
}

相關推薦

java實時動態獲取properties檔案內容

用“ClassLoader.getResourceAsStream”讀取properties檔案時會發現修改了.properties後,即使重新執行,讀入的仍為修改前的引數。此問題的原因在於ClassLoader.getResourceAsStream讀入後,會將.prope

java讀取本地constant.properties檔案內容

constant.properties中的內容是 鍵值對 例如:PING_IP=192.168.93.42 另外需要一個類,如下: package me.gacl.websocket; import java.io.IOException; import j

Java動態載入properties檔案,而不需要重啟應用的解決辦法

java中動態載入properties檔案,而不需要重啟應用的解決方法在Java專案中,如果需要使用.properties型別的檔案作為某些配置資訊存放介質的時候,一般都是將.properties檔案放在src目錄下,程式碼大部分都是這樣寫的: Properties pro

Java程式碼中獲取配置檔案(config.properties)中內容的兩種方法

方法千千萬,本人暫時只總結了兩種方法。 (1) config.properties中的內容如圖 在applicationContext.xml中配置 <!-- 引入配置檔案 --> <bean id="configProperties" cl

javaEE Springmvc,properties檔案解決硬編碼問題,@Value註解獲取properties檔案中的內容

springmvc.xml(Springmvc的核心配置檔案,讀取properties檔案): <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframewor

Spring中動態獲取配置檔案中的值(properties, 或者yml)

平時我們都習慣用@Value("${"XXXX"}")註解標註在成員變數上來獲取,但是如果說沒有配置則連繫統都啟動不了 所以我寫了一個工具類可以在程式執行期間動態獲取配置檔案中的值: 直接上工具類: package com.zz.amqp1.utils; import

java不重啟服務動態載入properties檔案

動態載入properties檔案內容,不需要重啟服務! 1 、Maven 工程,在resource下新建一個properties檔案 target/classes/config.properties user=dufy phoneNo=123456

五種方式讓你在java中讀取properties檔案內容不再是難題

一、背景   最近,在專案開發的過程中,遇到需要在properties檔案中定義一些自定義的變數,以供java程式動態的讀取,修改變數,不再需要修改程式碼的問題。就藉此機會把Spring+SpringMVC+Mybatis整合開發的專案中通過java程式讀取properties檔案內容的方式進行了梳理和分析

關於獲取config.properties檔案內容

分兩個部分。第一部分是  config.properties檔案 第二部分是 獲取config.properties檔案內容。連線oracle資料# do not write in chinese

java讀取properties檔案內容

public class LoadProperties { private static LoadProperties sington=null; private static Properties properties=null; private LoadPrope

獲取assets下properties檔案內容

如果我們在我們開發中需要一些固定的配置,propertoise檔案可以很容易滿足我們的需求。 下面簡單的幾個步驟,讓我們來簡單的使用它: 1.在assets檔案下建立 accountsdk.prope

Java專案中讀取properties檔案,以及六種獲取路徑的方法

Java讀取properties檔案的方法比較多,網上最多的文章是"Java讀取properties檔案的六種方法",但在Java應用中,最常用還是通過java.lang.Class類的getResourceAsStream(String name) 方法來實現,但我見到眾多讀取properties檔案的

java獲取Properties檔案中的值

import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.Inp

java中讀取properties檔案內容

package com.tgb.SpringActivemq.utils; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; impo

LR java 獲取txt檔案內容

1、使用LR的時候,有時候需要讀取txt檔案中的字串作為傳入伺服器的引數。下面是java讀取指定路徑下的檔案的路徑的函式。以備以後使用。 public static String readTxtFile(String filePath) throws IO

JAVA獲取txt檔案內容

public class txttest {     /**      * 讀取txt檔案的內容      * @param file 想要讀取的檔案物件      * @return 返回檔案內容      */     public static String txt2String(File file){

JAVA後臺程式以及JSP頁面如何獲取properties檔案中的值

        在實際開發中,我們經常會將一些屬性寫入到properties檔案中,方便我們在開發或維護中的操作。這樣做的好處十分明顯,當我們需求或執行環境發生變化時,只需更改相應的配置檔案即可符合要求。但這樣做的同時也帶來了一些開發上的問題,比如我們如何獲取propert

JAVA WEB 獲取properties檔案,存放路徑 及 獲取路徑

  首先明白,ClassPath : 指的是:WEB-INF\classes這個目錄下,通常把檔案放在src資料夾下,或者新建檔案並且新增到build path即可。IDE在同步檔案到tomcat時會自動將檔案放在classes下。   獲取properties的程式碼:

java獲取json檔案內容(url方式、本地方式)

因為工作原因需要讀取json檔案,最先是使用url方式不符合要求pass。又使用本地方式讀取。記錄一下方便後期檢視。 注:因為資料都是從網上摘抄,如有問題請告知我。 1.url方式 /**

使用java程式碼讀取properties檔案內容工具類

使用java程式碼讀取properties檔案內容,一般工作中框架使用配置讀取properties,這裡只是工具類 程式碼如下: package demo.util; import java.io.IOException; import java.io.InputSt