<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    ivaneeo's blog

    自由的力量,自由的生活。

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      669 Posts :: 0 Stories :: 64 Comments :: 0 Trackbacks
    package net.sourceforge.jtds.jdbc;

    import java.text.MessageFormat;
    import java.util.Enumeration;
    import java.util.Map;
    import java.util.ResourceBundle;

    public final class Messages {
      private static final String DEFAULT_RESOURCE = "net.sourceforge.jtds.jdbc.Messages";  //默認得資源
      private static ResourceBundle defaultResource;  //和locale的綁定

      private Messages() {
        }

        public static String get(String key) {
            return get(key, null);
        }

        public static String get(String key, Object param1) {
            Object args[] = {param1};
            return get(key, args);
        }

        static String get(String key, Object param1, Object param2) {
            Object args[] = {param1, param2};
            return get(key, args);
        }

        private static String get(String key, Object[] arguments) {
          try {
                ResourceBundle bundle = loadResourceBundle();
                String formatString = bundle.getString(key);
                // No need for any formatting if no parameters are specified
                if (arguments == null || arguments.length == 0) {
                    return formatString;
                } else {
                    MessageFormat formatter = new MessageFormat(formatString);
                    return formatter.format(arguments);
                }
            } catch (java.util.MissingResourceException mre) {
                throw new RuntimeException("No message resource found for message property " + key);
            }
        }

        private static ResourceBundle loadResourceBundle() {
            if (defaultResource == null) {
                defaultResource = ResourceBundle.getBundle(DEFAULT_RESOURCE);
            }
            return defaultResource;
        }

        static void loadDriverProperties(Map propertyMap, Map descriptionMap) {
            final ResourceBundle bundle = loadResourceBundle();
            final Enumeration keys = bundle.getKeys();
            while (keys.hasMoreElements()) {
                final String key = (String) keys.nextElement();
                final String descriptionPrefix = "prop.desc.";
                final String propertyPrefix = "prop.";
                if (key.startsWith(descriptionPrefix)) {
                    descriptionMap.put(key.substring(descriptionPrefix.length()), bundle.getString(key));
                }
                else if (key.startsWith(propertyPrefix)) {
                    propertyMap.put(key.substring(propertyPrefix.length()), bundle.getString(key));
                }
            }
        }
    }

    上面代碼中默認得綁定名為:"net.sourceforge.jtds.jdbc.Messages".其實就是以工程為根目錄,尋找文件Messages.properties.這里查找的方式和類是一樣的.比如:"net.sourceforge.jtds.jdbc.Messages",就是工程根目錄下的net/sourceforge/jtds/jdbc/下的Messages.properties文件.
    這個文件定義很多的屬性,要得到只要用get方法.

      注意這里的defaultResource = ResourceBundle.getBundle(DEFAULT_RESOURCE);沒有設定Locale值,所以文件名為Messages.properties.如果設置了Locale值的話,例如:defaultResource = ResourceBundle.getBundle(DEFAULT_RESOURCE, Locale.ENGLISH);那么它就會去查找文件Messages_en.properties.其他類似加后綴(Locale.CHINA是Messages_zh.properties).

      關于java.text.MessageFormat類,下面通過一個例子就可以說明:
        MessageFormat mf = new MessageFormat("You have {0} messages.");
        Object[] arguments = {"no"};
        System.out.println(mf.format(arguments));  //"You have no messages."

      關于String.startsWith(String prex)是測試字符串是否以prex開頭.
    posted on 2005-08-04 14:43 ivaneeo 閱讀(417) 評論(0)  編輯  收藏 所屬分類: java魔力
    主站蜘蛛池模板: 99久久99久久免费精品小说| 亚洲av永久无码精品网址| 热久久这里是精品6免费观看| 四虎影视精品永久免费网站| 亚洲AV网一区二区三区| 免费观看的av毛片的网站| 亚洲一区二区三区精品视频| 三年片在线观看免费大全 | 亚洲精品~无码抽插| 免费观看四虎精品成人| 亚洲国产人成精品| 国产又黄又爽又大的免费视频| 亚洲精品视频免费观看| 本道天堂成在人线av无码免费| 国产日产亚洲系列最新| 日韩a级无码免费视频| 久久精品国产亚洲av日韩| 又粗又大又黑又长的免费视频| 日本亚洲色大成网站www久久| 日韩毛片免费在线观看| 特级毛片aaaa免费观看| 亚洲一区精品伊人久久伊人| 嫩草在线视频www免费观看| 久久综合亚洲色HEZYO社区| AV片在线观看免费| 爱情岛论坛免费视频| 亚洲精品制服丝袜四区| 日本免费网站视频www区| 亚洲国产成人无码AV在线影院| 亚洲国产综合精品一区在线播放| 国产一区二区三区免费观看在线| 亚洲午夜久久久精品电影院| 亚洲A∨午夜成人片精品网站| 国产性生大片免费观看性| 亚洲成人黄色在线观看| 免费在线看片网站| 99在线免费观看视频| 美国毛片亚洲社区在线观看 | 亚洲精品第一国产综合境外资源| 日韩免费在线观看视频| 亚洲国产精品网站在线播放|