春天i18n的问题

时间:2011-08-18 02:52:33

标签: spring

我有一个使用Spring i18n的问题。我可以将参数传递给来自其他消息代码的i18ned消息。

例如。

YesKey=Yes
NoKey=No

Message1=This is {YesKey} 
Message2=This is {NoKey}

如果我不能实施,有没有替代方案。

1 个答案:

答案 0 :(得分:2)

作为票价我知道不可能只使用其名称在其他消息中使用消息。 - 这不是春天的限制,它是java.text.MessageFormat的限制。

但你可以做的是:

message.properties:

YesKey=Yes
NoKey=No

Message1=This is {0} 
Message2=This is {0}

java代码

 MessageSource messageSource =...
 String param = messageSource.getMessage("YesKey",
                      new Object[0], Locale.English);
 String message = messageSource.getMessage("Message1",
                      new Object[]{param}, Locale.English);

或在jsp(x)中:

 <spring:message var="param" code="YesKey" />
 <spring:message var="message" code="Message1" arguments="${param}" />