日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

在jboss環境下讀取.properties文件

系統 2339 0

轉自

http://blog.csdn.net/nineday/article/details/1683437

?

?? ?有時候有些常量需要根據需要作改動,如IP,port,數據庫的鏈接URL等,一般情況下我們把這些常量放在后綴是.properties的文件里,這樣既可以修改也很方便讀取。下面是以jboss作服務器作的一個讀取.properties的實驗,很簡單。
??? ResourceBundle的getBundle("filename")方法會默認地到jboss的 /server/conf/ 目錄下找filename.properties文件,然后再調用ResourceBundle實例的getString("key"),通過關鍵字取得值。我曾經在純jdk環境下作過同樣的實驗,默認會到.java的輸出目錄(按照習慣是bin/目錄)下找filename.properties文件。

在Jboss的實驗步驟如下:

(1)在jboss的/server/conf/ 下建一個屬性文件--config.properties,其內容如下:
socket.ip=192.168.0.1
socket.port=60000
socket.timeout=10000

(2)讀取的代碼如下:

package ?nineday.common;

import ?java.util.MissingResourceException;
import ?java.util.ResourceBundle;
/**
?*?create?on?20070709
?*?
@author ?nineday
?*
?*?to?get?property?from?file?.properties
?
*/

public ? final ? class ?Config {

????????
private ? static ?ResourceBundle?configResource? = ? null ;
????????
/**
?????????*?initialization
?????????
*/

????????
public ? static ? void ?initConfig() {
????????????????
try {
????????????????????????configResource?
= ?ResourceBundle.getBundle( " config " ); // file?name
????????????????}
catch (MissingResourceException?mre) {
????????????????????????mre.printStackTrace();
????????????????}

????????}


????????
/**
?????????*get?value
?????????*
@param ?String?key
?????????*
@return ?String?value
?????????
*/

????????
public ? static ?String?getValue(String?key) {
????????????????
if ?(configResource? == ? null )?initConfig();
????????????????
try {
????????????????????????
return ? new ?String(
??????????????????????????(configResource.getString(key))
??????????????????????????.getBytes(
" ISO8859_1 " ), " gb2312 " );
????????????????}
catch (Exception?e) {
????????????????????????
return ? null ;
????????????????}

????????}


}

?

(3)調用的代碼:

package ?nineday.socketservice;

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在啟動的時候加載屬性文件到內存,所以當我們修改屬性文件,必須重啟jboss才能生效。

在jboss環境下讀取.properties文件


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 合肥市| 玉山县| 苗栗市| 通江县| 扎兰屯市| 靖宇县| 云霄县| 肥城市| 社旗县| 辛集市| 灵武市| 临澧县| 东乡| 铜陵市| 卢氏县| 滨海县| 洛扎县| 宝坻区| 阿尔山市| 成都市| 永平县| 佳木斯市| 安徽省| 金乡县| 蓬溪县| 香河县| 尚义县| 兴国县| 乌拉特后旗| 阳原县| 东乡族自治县| 大渡口区| 虹口区| 大名县| 买车| 应城市| 泗阳县| 沐川县| 班玛县| 云浮市| 商都县|