internationalization - 如何从相应的语言环境属性文件中加载所有属性
问题描述
有没有办法根据会话语言环境将 Class.properties/Class_locale.utf8.properties 文件中的所有属性加载到 Properties 对象。
解决方案
最简单的方法是使用java.util.Properties#load(java.io.InputStream)
.
要获取 InputStream,您可以使用
String resourceName = SomeComponent.class.getSimpleName() + ".properties";
// String resourceName = SomeComponent.class.getSimpleName() + "_" + Session.get().getLocale() + ".properties";
SomeComponent.class.getResourceAsStream(resourceName);
Wicket API 中没有任何内容可以为您提供完整的属性。最接近的是:org.apache.wicket.resource.loader.IStringResourceLoader
,org.apache.wicket.resource.IPropertiesFactory
以及它们的实现。
推荐阅读
- php - 在自定义表中保存 WooCommerce 订单详细信息
- python - 如何通过唯一的rowID组合两个数据框,一个比另一个具有更少的值
- python - 如何在 scikit learn predict 中添加 none 选项
- java - Eclipse Formatter 在代码块之间添加空行
- unity3d - 如何在 Unity3D 中开发左滑菜单
- algorithm - 对 Kruskals 算法使用数组而不是不相交集来加快合并和查找时间
- wildfly-12 - Wildfly-14:java.lang.ClassCastException:org.apache.xml.dtm.ref.DTMManagerDefault 无法转换为 org.apache.xml.dtm.DTMManager
- python-3.x - 使用 pip 安装 pocketsphinx 包时出错
- wso2 - 为 WSO2AM 的 MB 配置 TLS
- swift - 观看电话通信 - didReceiveApplicationContext 未触发