<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魔力
    主站蜘蛛池模板: 国产亚洲Av综合人人澡精品| 亚洲的天堂av无码| 黄网站在线播放视频免费观看 | 亚洲人AV在线无码影院观看| 免费观看无遮挡www的小视频| 亚洲成av人片在www鸭子| AV片在线观看免费| 亚洲熟妇少妇任你躁在线观看| 中文字幕av无码无卡免费| 国产国拍亚洲精品福利| 国产黄色片免费看| 亚洲精品亚洲人成在线观看| 在线毛片片免费观看| 亚洲色成人网一二三区| 成人特级毛片69免费观看| 久久国产色AV免费看| 久久久久久久亚洲Av无码| av片在线观看永久免费| 亚洲线精品一区二区三区影音先锋 | 亚洲av日韩av激情亚洲| 亚洲日韩久久综合中文字幕| 成人免费视频88| 精品国产亚洲一区二区三区在线观看 | 大地资源网高清在线观看免费| 亚洲最大的成网4438| 两个人的视频高清在线观看免费 | 亚洲欧美综合精品成人导航| 亚洲成A人片在线观看无码3D| 成全视成人免费观看在线看| 亚洲黄色在线视频| 四虎www成人影院免费观看| 无码人妻一区二区三区免费视频 | 亚洲国产精品人久久电影| 亚洲爆乳精品无码一区二区三区 | 免费亚洲视频在线观看| 污污视频网站免费观看| 国产亚洲av片在线观看16女人 | 国产AV无码专区亚洲AV蜜芽| 亚洲午夜久久久影院| 亚洲一区二区免费视频| 香港特级三A毛片免费观看|