導航:首頁 > 編程語言 > 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手機安裝失敗 瀏覽:28
雲計算沒有伺服器 瀏覽:67
怎麼顯示android的APP 瀏覽:121
c編譯器怎麼刪除空格 瀏覽:695
php自動釋放內存 瀏覽:219
golang編譯庫 瀏覽:794
oracle數據字元串加密 瀏覽:603
研究生去上海當程序員 瀏覽:90
u8電腦伺服器連接失敗怎麼解決 瀏覽:569
bat腳本創建日期命名文件夾 瀏覽:104
將圖片轉換為pdf格式 瀏覽:980
java中形參 瀏覽:83
枚舉類型編譯器 瀏覽:519
oraclejava包 瀏覽:568
手機定位手機怎麼定位安卓 瀏覽:523
在哪個app買歐萊雅最便宜 瀏覽:495
程序員吃零食好嗎 瀏覽:261
php工程師主要做什麼 瀏覽:356
tvp保存到哪個文件夾 瀏覽:197
怎麼把空調裡面的壓縮機拆卸掉 瀏覽:943