POJO パラメータを抽出するために BeanUtils で使用しているのと同じ既知の表記法を使用できるが、文字列内のプレースホルダーを簡単に置き換えることができるライブラリはありますか?
BeanUtils 自体または同様の機能を備えた他のライブラリを使用して、独自のロールを作成できることはわかっていますが、車輪の再発明はしたくありませんでした。
次のように String を取得したいと思います。
String s = "User ${user.name} just placed an order. Deliver is to be
made to ${user.address.street}, ${user.address.number} - ${user.address.city} /
${user.address.state}";
そして、以下の User クラスの 1 つのインスタンスを渡します。
public class User {
private String name;
private Address address;
// (...)
public String getName() { return name; }
public Address getAddress() { return address; }
}
public class Address {
private String street;
private int number;
private String city;
private String state;
public String getStreet() { return street; }
public int getNumber() { return number; }
// other getters...
}
次のようなものに:
System.out.println(BeanUtilsReplacer.replaceString(s, user));
各プレースホルダーを実際の値に置き換えます。
何か案は?