佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

12
返回列表 发新帖
楼主: zchong1022

大胆创新. Fully utilised XML.

  [复制链接]
 楼主| 发表于 27-12-2006 01:20 PM | 显示全部楼层
原帖由 goatstudio 于 27-12-2006 11:36 AM 发表


variable 固然快, 但如果用 variable 的话, 用户就不能随心所欲修改里面的字眼.



对啊. 还有呢, 的就是, 我公司法有几个 System 是用不同的 language 写的. 所以要用到 XML 来 communicate.

还有呢, 就是currentlly, 我公司是用着DB来parse的, 所以quite resource-intensive.
回复

使用道具 举报


ADVERTISEMENT

 楼主| 发表于 27-12-2006 01:20 PM | 显示全部楼层
原帖由 goatstudio 于 27-12-2006 11:36 AM 发表


variable 固然快, 但如果用 variable 的话, 用户就不能随心所欲修改里面的字眼.



对啊. 还有呢, 的就是, 我公司法有几个 System 是用不同的 language 写的. 所以要用到 XML 来 communicate.

还有呢, 就是currentlly, 我公司是用着DB来parse的, 所以quite resource-intensive.
回复

使用道具 举报

发表于 27-12-2006 01:39 PM | 显示全部楼层
原帖由 zchong1022 于 27-12-2006 01:20 PM 发表
对啊. 还有呢, 的就是, 我公司法有几个 System 是用不同的 language 写的. 所以要用到 XML 来 communicate.

还有呢, 就是currentlly, 我公司是用着DB来parse的, 所以quite resource-intensive.


直接用DB来control比较好。。如果你有很多个不同的product,你会maintain很多的XML文件..如这product需要加这个字。。你就要replace你的xml到另一个product那里了。。还有可能会发生duplicate record的问题..我公司是用一架server专门负责处理所有application的 language translator,如果是小规模的公司就不建议这样做.
回复

使用道具 举报

阿牙木 该用户已被删除
发表于 27-12-2006 04:02 PM | 显示全部楼层
我们公司是用XML + LOCALIZATION.DLL, 不过那个LOCALIZATION.DLL 我们拿到源码后自己修改了一下
速度不会慢
回复

使用道具 举报

发表于 27-12-2006 10:38 PM | 显示全部楼层
asp.net 好像有类似的功能
globlolize


http://rapidshare.com/files/9147743/hilo_globlolize.zip.html

这里是sample
是从http://asp.net 那里抄来的

[ 本帖最后由 quantum^_^ 于 27-12-2006 10:49 PM 编辑 ]
回复

使用道具 举报

发表于 28-12-2006 12:28 AM | 显示全部楼层
直接用variable来cache


public class LanguageResources
{
  private static String User_Login_Login_ID = "";
  private static String User_Login_Login_Password = "";
  private static String User_Login_User_Name = "";
  private static String User_Login_User_Type = "";
  private static String User_Login_User_Status = "";
  
  public static LanguageResources(String language)
  {
    //load from text file
    //load from xml file
    //load from database
  }

  //getter
  public void getUser_Login_Login_ID()
  {
    return User_Login_Login_ID;
  }
  
  //getter for others field
}





public class MessageUtils
{
  private static LanguageResources english = new LanguageResources("English");
  private static LanguageResources chinese = new LanguageResources("Chinese");
  
  public static String getMessage(String language, String key)
  {
    Object myLanguage;
    if (language.equalsIgnoreCase("English"))
    {
      myLanguage = english;
    }  
    else
    {
      myLanguage = chinese;
    }  
    Class cls = obj.getClass();
    return getProperty(cls, obj, "get" + key);
  }   


    private static String getProperty(Class cls, Object obj, String methodName) {
        String result = "";
        try {
            Method m = null;
            m = cls.getMethod(methodName);
            result = toTrimString((String) m.invoke(obj));
        } catch (Throwable e) {
            System.err.println(e);
        }
        return result;
    }
   
  public static void reload()
  {
    english = new LanguageResources("English");
    chinese = new LanguageResources("Chinese");
  }
   
}
回复

使用道具 举报

Follow Us
您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 27-8-2025 03:07 AM , Processed in 0.134586 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表