?? jzjresources.java
字號:
package org.jr.jzj;
/**
* <p>Copyright: Copyright (c) 2002-2003</p>
* <p>Company: JavaResearch(http://www.javaresearch.org)</p>
* <p>最后更新日期:2003年1月9日
* @author Cherami,Barney,Brain
* @version 0.8
*/
import java.util.*;
import java.util.prefs.*;
/**
* 系統的資源的抽象。
* <p><b>目前使用的是JDK1.4引入的資源束類進行實現,使用此類的目的就是方便換用其他的方案</b>
* <p>以后換用其他方案時不用修改其他部分的代碼,目前這個類實際上是JDK1.4引入的資源束的一個代理(Proxy),
* 而且此類被設計為一個Singleton類,因為一個系統只需要一個這樣的類。
*/
public class JZJResources {
private static JZJLogger logger = new JZJLogger(JZJResources.class);
private static ResourceBundle resourceBundle; //底層的實際資源,即資源束
private static boolean haveGetResource = false; //是否已經得到資源
private static JZJResources resource; //唯一的資源類實例
Preferences preference = JZipJar.preference;
/**
* 構造方法,定義為私有防止被多次實例化。
*/
private JZJResources() {
}
/**
* 得到系統資源。
* @return 系統唯一的資源實例,語言使用本系統默認的語言,即通過JZipJar.getSystemLocale()得到的。
*/
public static JZJResources getResources() {
return getResources(JZipJar.getSystemLocale());
}
/**
* 根據指定的語言得到系統資源。
* @param locale 系統使用的區域以便得到適合的資源
* @return 系統唯一的資源實例
*/
public static JZJResources getResources(Locale locale) {
//如果已經實例化則返回唯一的那個資源,否則進行實例化
if (haveGetResource) {
return resource;
}
else {
resourceBundle = getResourceBundle(locale);
resource = new JZJResources();
return resource;
}
}
/**
* 得到資源束。
* @param locale 系統使用的區域
* @return 和區域匹配的合適的資源束
*/
private static ResourceBundle getResourceBundle(Locale locale) {
haveGetResource = true;
return ResourceBundle.getBundle(JZJResources.class.getPackage().getName() +
".Resources", locale);
}
/**
* 根據主鍵得到對應的字符串。
* @param key 主鍵
* @return 主鍵對應的字符串
*/
public String getString(String key) {
return resourceBundle.getString(key);
}
/**
* 根據主鍵得到對應的字符串數組。
* @param key 主鍵
* @return 主鍵對應的字符串數組
*/
public String[] getStringArray(String key) {
return resourceBundle.getStringArray(key);
}
/**
* 根據主鍵得到對應的對象。
* @param key 主鍵
* @return 主鍵對應的對象
*/
public Object getObject(String key) {
return resourceBundle.getObject(key);
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -