Tôi có một DTO như thế này:Có thể tuần tự hóa/deserialize JSON thành Java DTO với các trường bổ sung đi vào bản đồ không?
public Foo {
public int bar = 123;
public Map<String, Object> params; // key1=v1, key2=v2 etc.
}
Tôi muốn nó để serialize đến/từ các JSON sau:
{
"bar": 123,
"key1": "v1",
"key2": "v2"
}
Có ai biết làm thế nào để làm điều này bằng Jackson hay Genson? Về cơ bản, tôi muốn chuyển đổi loại tự động cho các trường được khai báo trong DTO nhưng bất kỳ "extras" nào để đi vào bản đồ params.
Sử dụng API truyền trực tuyến của Jackson và lớp trình tạo cho 'Foo', có, có thể. Tôi tin rằng Jackson thậm chí còn có khả năng nuốt "phần còn lại" của các thành viên chưa được ánh xạ vào một "Bản đồ", tuy nhiên tôi chưa bao giờ sử dụng ... –
fge
bạn có thể thử gson (nhưng nó hoạt động cho phiên bản draft3) – Chris
@David: Tôi tò mò về trường hợp sử dụng của bạn yêu cầu loại cấu trúc JSON đó. Điều gì sẽ xảy ra nếu 'params' có khóa với tên' bar'? – nadirsaghar