導航:首頁 > 編程語言 > java修改properties

java修改properties

發布時間:2022-09-24 22:44:30

A. javaweb 修改properties文件中的屬性值

String realPath1 = getServletContext().getRealPath("/");//這樣你就得到了 你的CLASS目錄 然後再拼裝即可 試用於非WAR包
String realPath2 = getServletContext().getResource("/").getPath();//試用於所有
上面的都是獲取到了CLASS目錄 也就是你工程編譯後的目錄 然後再根據目錄層級拼裝即可
注意 web項目部署到伺服器後 用你之前的方式是拿不到文件的 因為部署到伺服器上面後的目錄都變了 而且文件都放入CLASS目錄下面了 所以你那錯的

B. java 修改properties文件 順序亂掉

java的Properties類繼承自HashTable。HashTable都很熟悉,這是一個存放鍵值對,基於hash表存儲的,所以說順序也是不固定的。因此只要使用java自帶的Properties工具類讀寫properties文件的都是順序不可預知的。如果想實現有順序的方式可以自定義一個類,使用LinkedHashMap做為父類來實現,這樣效率就沒那麼高了。

使用有順序的鍵值對的方式存儲數據推薦使用jdk中提供的LinkedHashMap。這個工具類是基於鏈表的形式存儲鍵值對數據。存放的數據和獲取的順序都是一致的。

C. java修改properties文件 丟失內容

我注意到你寫的這句FileOutputStream fos=new FileOutputStream(resourceFile);運行時會馬上覆蓋掉原有的內容,因此你這句話應該移到將鍵值對載入完成後。


修改如下,測試通過。


/**
*新增或修改資源文件的內容
*
*@paramresourceFile
*資源文件(絕對路徑+文件名,不需要.properties後綴)
*@paramkey鍵
*@paramvalue值
*/
publicstaticvoidsetString(StringresourceFile,Stringkey,Stringvalue){

Propertiesprop=newProperties();
try{
if(resourceFile.indexOf(".properties")==-1){
resourceFile+=".properties";
}
FileInputStreamfis=newFileInputStream(resourceFile);
try{
prop.load(fis);
fis.close();
prop.setProperty(key,value);
FileOutputStreamfos=newFileOutputStream(resourceFile);
prop.store(fos,"CopyrightThcic");
fos.close();
}catch(IOExceptione){
e.printStackTrace();
System.out.println("修改資源文件:"+resourceFile+"異常!msg:"+e.getMessage());
}

}catch(FileNotFoundExceptione){
e.printStackTrace();
System.out.println("無法獲得資源文件:"+resourceFile);
}
}

D. java web啟動時修改並重新載入properties文件

大兄弟,我這兒有一個,你參考一下,但是輸出流問題,沒有得到解決。因為src在項目布置到tomcat上會消失的,所以你看看能不能解決?

E. JAVA中如何重新載入.properties文件,使其他引用實時改變

*Spring提供的PropertiesLoaderUtils允許您直接通過基於類路徑的文件地址載入屬性資源

*最大的好處就是:實時載入配置文件,修改後立即生效,不必重啟

*/
privatestaticvoidspringUtil(){
Propertiesprops=newProperties();
while(true){
try{
props=PropertiesLoaderUtils.loadAllProperties("message.properties");
for(Objectkey:props.keySet()){
System.out.print(key+":");
System.out.println(props.get(key));
}
}catch(IOExceptione){
System.out.println(e.getMessage());
}
try{
Thread.sleep(5000);
}catch(InterruptedExceptione){
e.printStackTrace();
}
}
}

F. java web程序註解讀取properties文件,每次修改都需要重啟伺服器,怎麼解決

你是不是用了類似maven的管理工具
然後修改的是src下面的,target也要修改才行

G. java怎麼用java修改.properties文件鍵值,文件在java包中。我能讀到這個文件。但無法修改

讀出來後用set方法修改屬性,然後再用Properties 的save方法保存修改 並且覆蓋原來的info.properties文件不就行了。不過save方法用的輸出流 需要用filewriter寫入/com/zst/warning/config/info.properties文件。
web項目應該沒問題,如果是java應用程序打成jar包後的話就比較麻煩了。要先解壓修改了以後還要再重新打包

H. java修改通過讀取連接資料庫的properties文件之後如何讓其生效

用線程監控文件是否被修改,若修改:

  1. properties文件配置參數在系統中以系統屬性存在就直接重設屬性

  2. 若採用spring,則需要刷新數據源

閱讀全文

與java修改properties相關的資料

熱點內容
android陀螺儀應用 瀏覽:719
新加坡加密貨幣騙局 瀏覽:910
電腦文件夾打開自動變為全屏 瀏覽:969
簡易單斷面計演算法 瀏覽:850
php社區程序 瀏覽:976
python現在就業怎麼樣 瀏覽:304
php上傳目錄許可權設置 瀏覽:736
php合同檔案管理系統 瀏覽:366
tshock伺服器地址 瀏覽:877
php解析文件流 瀏覽:780
伺服器機箱銅片有什麼用 瀏覽:969
樂視手機如何使用原生態安卓 瀏覽:215
dns伺服器怎麼備份啊 瀏覽:865
蘋果退款app怎麼重新購買 瀏覽:655
U盤cmd檢查文件夾成文件 瀏覽:66
java路徑是否存在 瀏覽:338
新氧app上怎麼測臉型 瀏覽:787
用指令獲得命令方塊 瀏覽:427
流星蝴蝶劍怎麼輸入命令 瀏覽:681
keil有紅叉但是能編譯通過 瀏覽:498