轉(zhuǎn)自
http://blog.csdn.net/nineday/article/details/1683437
?
?? ?有時(shí)候有些常量需要根據(jù)需要作改動(dòng),如IP,port,數(shù)據(jù)庫(kù)的鏈接URL等,一般情況下我們把這些常量放在后綴是.properties的文件里,這樣既可以修改也很方便讀取。下面是以jboss作服務(wù)器作的一個(gè)讀取.properties的實(shí)驗(yàn),很簡(jiǎn)單。
??? ResourceBundle的getBundle("filename")方法會(huì)默認(rèn)地到j(luò)boss的
/server/conf/
目錄下找filename.properties文件,然后再調(diào)用ResourceBundle實(shí)例的getString("key"),通過(guò)關(guān)鍵字取得值。我曾經(jīng)在純jdk環(huán)境下作過(guò)同樣的實(shí)驗(yàn),默認(rèn)會(huì)到.java的輸出目錄(按照習(xí)慣是bin/目錄)下找filename.properties文件。
在Jboss的實(shí)驗(yàn)步驟如下:
(1)在jboss的/server/conf/ 下建一個(gè)屬性文件--config.properties,其內(nèi)容如下:
socket.ip=192.168.0.1
socket.port=60000
socket.timeout=10000
(2)讀取的代碼如下:










































?
(3)調(diào)用的代碼:
import ?nineday.common.Config;
import ?java.net.Socket;
/**
?*?to?provide?socket?service
?*?
?*? @author ?nineday
?*
? */
public ? class ?SocketService?{
? // private?static?final?Log?log?=?LogFactory.getLog(SocketService.class);
? private ? static ? final ?String?socketServerIP? = ?Config.getValue( " socket.ip " );
? private ? static ? final ? int ?socketServerPort? = ?Integer.parseInt(Config.getValue( " socket.port " ));
? private ? static ? final ? int ?socketTimeout? = ?Integer.parseInt(Config.getValue( " socket.timeout " ));
? public ? static ?Socket?getSocketInstance() throws ?Exception{
?? // log.debug("start?a?new?socket?to?"+socketServerIP+":"+socketServerPort);
??Socket?socketServer? = ? null ;
??socketServer = new ?Socket(socketServerIP,socketServerPort);
?????socketServer.setSoTimeout(socketTimeout);
????? return ?socketServer;
?}
}
注意:
(1)如果文件的路徑是/server/conf/
folder?
, 載入文件的代碼這樣寫ResourceBundle.getBundle("
folder
.
filename"); ‘.’代表的是文件的下一層,所以文件名一定不能包含‘.’。
(2)jboss在啟動(dòng)的時(shí)候加載屬性文件到內(nèi)存,所以當(dāng)我們修改屬性文件,必須重啟jboss才能生效。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
