如何从.properties文件中获取字符串并在同一.properties文件中使用它

时间:2015-07-02 07:46:36

标签: java internationalization properties-file

有没有办法在.properties文件中检索var的值,并且在同一个.properties文件中使用?

考虑到这一点(我必须在每行中手动编写“主菜单”字样)

mainMenuTitle = Main Menu
NotBlank.menu.title = the field 'Main Menu' can't be null
Size.menu.title = the field 'Main Menu' must contains 10 characters

我想要这样的东西(我自动得到var'mainMenuTitle'的值)

mainMenuTitle = Main Menu     
NotBlank.menu.title = the field **mainMenuTitle** can't be null
Size.menu.title = the field **mainMenuTitle** must contains 10 characters

2 个答案:

答案 0 :(得分:0)

您可以单独获取这两条消息,然后进行替换以注入标题

   @Inject
  public MessageSource messageSource;


public static String getMessage(String messageKey1, String messageKey12) {
    String title =  messageSource.getMessage(messageKey1, arguments, locale);
    String message =  messageSource.getMessage(messageKey2, arguments, locale).replace("**mainMenuTitle**", title);

}

答案 1 :(得分:0)

这可能是你想要的,它有点旧,但可能适合你的需要。  Enabling constant substitution in Property Values 您可以在属性值的任何位置替换常量,甚至在值中包含多个常量,如下例所示:

CONST_1 = shoes and ships CONST_2 = sealing wax SomeValue = {CONST_1} and {CONST_2}

在此示例中,“SomeValue”属性评估为“鞋子和船舶以及封蜡。”