下面是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"
}
}AddressSchema.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;
}
}发布于 2020-01-31 05:17:29
我相信您正在尝试使用同一个类来解析具有不同名称的addr的某个json,并让它以不同的名称address返回。如果不使用两个类和一个映射器来映射值,我看不出这是怎么可能的。作为人类,我们认为address和addr非常相似,必须有映射它们的机制,而address和name则完全不同,我不会要求它们被映射。但对于计算机来说,这将是一个很难提供的特性。希望你明白我的意思。
https://stackoverflow.com/questions/59737548
复制相似问题