2011-02-15 124 views
-2

您使用什麼策略來國際化用ZK編寫的Web應用程序?ZK的最佳國際化策略

我目前使用他們的 '搞笑' 語法$ {C:L( 'LABEL_NAME')},但它是利用具有2個問題的機制:

1)不接受\ uchcode語法,這是java中資源包的標準。無法從NetBeans編輯這些文件。

2)他們只使用一個Web應用程序整個文件,這可能是extremally大,我怕可能的性能因素。

因此,我有2個問題:

1)是單一的大屬性的使用文件中的性能問題?

2)是否有任何其他好的方法來國際化ZK應用程序(zscript中,我不認爲好的方法)?

回答

1

我覺得不會對負載的i18n消息的性能問題,它使用快速哈希目標的消息,但是(在負載消息文本存儲器中不同的地方)內存問題。但我不在乎內存問題,因爲它只是短信和服務器功能強大,並有巨大的內存。

對我來說,我一直使用ASCII關鍵,所以沒有編碼的關鍵問題。

有一件事是不方便的是我可以只在一個i3文件中設置消息,如果我想設置多個(用於模塊化消息)文件,我必須註冊一個LabelLocator標籤的賴特代碼。

2

1)它不是一個問題對我來說。語言文件比其他文件小很多(所以讀取它們的負載相當輕)

2)imo,我不會在我的在線項目中使用zscript,你可以看看官方性能提示 - Not to Use zscript for Better Performance 。關於國際化ZK應用

更多信息,請參閱ZK Developer's Reference - Labels

順便說一句,我用來創建一個LabelManager和管理不同LANGS /區域設置的來源。

+0

好吧,通常語言文件要小得多,因爲模塊/頁面通常有單獨的語言文件。然而,在ZK中,當整個應用程序將有單個文件時,該文件可能是最大的.... – 2011-02-16 07:35:56

0

據我所知,C:L()僅僅是默認的方式來獲取國際化的標籤。如果你喜歡,你可以使用標準資源包。你所要做的就是實現一個靜態方法,然後用它把它映射到ZUL頁面。