Как мне отформатировать строку со свойствами из bean

Я хочу создать строку, используя формат, заменив некоторые токены в формате свойствами из bean-компонента. Есть ли библиотека, которая поддерживает это, или мне придется создавать свою собственную реализацию?

Позвольте мне продемонстрировать это на примере. Скажем, у меня есть bean Person ;

public class Person {
  private String id;
  private String name;
  private String age;

  //getters and setters
}

Я хочу иметь возможность указывать строки формата, например;

"{name} is {age} years old."
"Person id {id} is called {name}."

, и автоматически заполнять заполнители формата значениями из bean, например:

String format = "{name} is {age} old."
Person p = new Person(1, "Fred", "32 years");
String formatted = doFormat(format, person); //returns "Fred is 32 years old."

I Я просмотрел MessageFormat , но это, кажется, позволяет мне передавать только числовые индексы, а не свойства bean-компонентов.

7
задан Qwerky 18 July 2011 в 14:02
поделиться