Java 如何将不同数量的参数传递到.properties文件以获取消息?
我正在使用Tapestry,希望将各种参数传递到.properties文件,以便在屏幕上打印消息 例如,我想这样打印消息:Java 如何将不同数量的参数传递到.properties文件以获取消息?,java,Java,我正在使用Tapestry,希望将各种参数传递到.properties文件,以便在屏幕上打印消息 例如,我想这样打印消息: 消息为1、2、3和4。或 消息为1和2。或 消息是1 我如何在属性文件中定义消息,以便可以传递不同数量的参数?我可以把它们放在列表中吗 message=The messages for {0} - {1, list} Tapestry提供了一个org.apache.Tapestry.ioc.Messages服务(在Tapestry ioc中),您可以将该服务插入到任何
- 消息为1、2、3和4。或
- 消息为1和2。或
- 消息是1
message=The messages for {0} - {1, list}
Tapestry提供了一个
org.apache.Tapestry.ioc.Messages
服务(在Tapestry ioc中),您可以将该服务插入到任何组件中:
- 访问附加到此组件的
文件中指定的任何属性(方法.properties
)字符串获取(字符串键)
- 获取并使用
对象对同一文件的属性执行某种“String.format(…)”操作MessageFormatter
public class MyComponent {
@Inject
private Messages messages;
@Property
private String messageToDisplay;
@SetupRender
final void init() {
// ...
messageToDisplay = messages.get("some-key").format(valueForParam0, valueForParam1, ...);
// ...
}
}
此外,从Tapestry的v5.3开始,您可以使用org.apache.tapestry5.alerts.AlertManager
服务轻松地将消息显示为警报(具有“info”、“warn”等级别)