Tôi muốn Jackson deserialize một lớp với hàm tạo sau:
public Clinic(String name, Address address)
Bỏ số liệu đối số đầu tiên là dễ dàng. Vấn đề là Địa chỉ được định nghĩa là:
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();
}
}
và được xây dựng như thế này: new Address.Builder().setCity("foo").setCountry("bar").create();
Có cách nào để lấy các cặp khóa-giá trị từ Jackson để tự tạo Địa chỉ không? Ngoài ra, có cách nào để Jackson sử dụng chính lớp Builder không?
@JsonPOJOBuilder
tất cả các chú thích cùng nhau, hãy đổi tên "create" thành "build" và chú thích cho từng bộ thiết lập trình tạo bằng@JsonProperty
.