我正在寻找将嵌套属性的平面 Map<String, String> 深层复制到 bean 的最简单方法。一些嵌套属性是我想为其提供实例化策略的接口。例如:
Map<String, String> customer = new Map<String, String>();
customers.put("id", "123");
customers.put("address.line1", "221B Baker St.");
public class Customer {
private int id;
private Address address; //address is an interface
... getters/setters ...
}
请注意,我不想提供显式映射,只是为接口提供具体实例的策略。我假设 commons-beanutils 可以做到这一点,但它们是该功能的开放JIRA票。具有类似功能的库是 Google GSON,它提供了一个名为InstanceCreator的接口。
我已经在 beanutils 之上实现了一个解决方案,但是是否有一个内置此功能的 bean 转换库?