使用 jsonschema2pojo 处理 json 架构的序列化和反序列化



我有下面的json模式和使用jsonschema2pojo库生成的java类

AddressSchema.json

{
"$id": "https://example.com/address.schema.json",
"$schema": "http://json-schema.org/draft-07/schema#",
"description": "An address similar to http://microformats.org/wiki/h-card",
"type": "object",
"properties": {
"address": {
"type": "string"
}
}

地址架构.java

public class AddressSchema {
private String address;
@JsonProperty("address")
public String getAddress() {
return address;
}
@JsonProperty("address")
public void setAddress(String address) {
this.address = address;
}
}

我的要求是在 setter 和 getter 上生成具有不同@JsonProperty值的类,如下所示。有什么方法可以实现此行为吗?

public class AddressSchema {
private String address;
@JsonProperty("address")
public String getAddress() {
return address;
}
@JsonProperty("addr") //different value in the setter
public void setAddress(String address) {
this.address = address;
}
}

我相信您正在尝试使用相同的类来解析具有不同名称addr的某个 json,并让它以不同的名称返回address.我不明白如果不使用两个类和一个映射器来映射值,怎么可能。作为人类,我们认为addressaddr非常相似,必须有机制来映射它们,而addressname完全不同,我不会要求它们被映射。但是对于计算机来说,这将是一个难以提供的功能。希望你明白我的意思。

最新更新