我希望杰克逊使用以下构造函数反序列化一个类:
public Clinic(String name, Address address)
反序列化第一个参数很容易。问题是地址被定义为:
public class Address {
private Address(Map<LocationType, String> components)
...
public static class Builder {
public Builder setCity(String value);
public Builder setCountry(String value);
public Address create();
}
}
并且是这样构造的:new Address.Builder().setCity("foo").setCountry("bar").create();
有没有办法从杰克逊那里获取键值对以便自己构建地址?或者,有没有办法让杰克逊使用 Builder 类本身?