使用java實現i18n的最佳實踐是什麼?實現i18n使用java的最佳實踐是什麼?
6
A
回答
1
我建議看看ResourceBundles。
這是一個複雜的問題,因爲如果你有一個數據庫,你也想要I18N。
3
Java教程有一個Internationalization trail。它涵蓋了國際化的核心語言功能。
1
這基本上是域的問題。如果你在網上,大多數主要的框架將爲I18N提供一種方式(在春季,這個作品爲with .properties files and taglibs)。
對於桌面應用程序而言,資源注入可能是一個有趣的選項。 Spring應用程序框架更進一步,並允許您從配置文件中完全配置已命名的Swing組件(按鈕,標籤......)。有了這個,你可以設置組件的顏色和邊界,但也可以設置它們的文本。
13
您可以使用ResourceBundle.getBundle(name)
根據用戶區域設置返回正確的包並獲取特定的消息。
ResouceBundle類的工作方式是嘗試使用本地化消息加載軟件包(通常是一個.properties文件)。例如,你可以有:
messages_en.properties
-----
greeting = "Hello "
和
messages_es.properties
-----
greeting = "Hola "
和按如下方式使用它。
... void main(... . {
ResourceBundle bundle = ResourceBundle.getBundle("messages", userLocale);
System.out.println(bundle.getString("greeting") + " Steve ");
}
它將打印
Hello Steve
如果用戶區域設置爲英語(EN),和
Hola Steve
如果用戶區域設置是西班牙語(ES)
的方法ResouceBundle.getBundle() ,不僅會加載.properties文件,如果可用的話,它還可能加載一個類,這個類可能會加載消息e來自數據庫。
參見:
相關問題
- 1. 實現緩存層的最佳實踐是什麼?
- 2. 什麼是實現多部分TableView的最佳實踐
- 3. Javascript下載按鈕的最佳實踐實現是什麼?
- 4. 實現Rx處理程序的最佳實踐是什麼?
- 5. java中單實例類的最佳實踐是什麼?
- 6. PHP中的最佳實踐是什麼?
- 7. 窯庫的最佳實踐是什麼?
- 8. 什麼是您的CoreLocation最佳實踐?
- 9. 授權的最佳實踐是什麼?
- 10. java最佳實踐
- 11. 實踐中的Android ADK開發 - 什麼是最佳實踐?
- 12. 什麼是MEF最佳實踐?
- 13. CSS3 - 性能最佳實踐是什麼?
- 14. 表架構,最佳實踐是什麼?
- 15. 什麼是AJAX最佳實踐?
- 16. 什麼是.htaccess RewriteRule最佳實踐?
- 17. MySQL索引 - 什麼是最佳實踐?
- 18. 什麼是最佳實踐System.Web.Mvc ViewModels
- 19. 什麼是一些OOoBasic最佳實踐?
- 20. 什麼是一些Sharepoint最佳實踐?
- 21. register_shutdown_function() - 什麼是最佳實踐?
- 22. 使用EJB接口實現jBPM serviceTask的最佳實踐是什麼?
- 23. 在使用NHibernate時實現安全性的最佳實踐是什麼?
- 24. 最佳實踐 - 什麼是觀看目錄的最佳方式
- 25. 什麼是使用Hibernate的hbm2java的最佳實踐?
- 26. 從Java管理動態JavaScript的最佳實踐是什麼?
- 27. 第一個Java EE Spring項目的「最佳實踐」是什麼?
- 28. 什麼是Java最佳實踐來處理枚舉的
- 29. 實現緩存的最佳實踐
- 30. Android:實現LocationManager的最佳實踐
看個人博客文章介紹了Java國際舉例:http://tshikatshikaaa.blogspot.nl/2012/11/introduction-to- Java的internationalization.html – JVerstry 2012-11-17 18:40:04