Java 自定义@JsonProperty注释

Java 自定义@JsonProperty注释,java,json,jackson,jsonschema,jsonschema2pojo,Java,Json,Jackson,Jsonschema,Jsonschema2pojo,考虑json模式: { "type":"object", "$schema":"http://json-schema.org/draft-04/schema", "required":false, "properties":{ "inventory":{ "type":"object", "required":false, "properties":{

考虑json模式:

{
    "type":"object",
    "$schema":"http://json-schema.org/draft-04/schema",
    "required":false,
    "properties":{
        "inventory":{
            "type":"object",
            "required":false,
            "properties":{
                "count":{
                    "type":"number",
                    "required":false
                }
            }
        }
    }
}
使用jsonschema2pojo时,会生成相应的java对象。从中提取以下计数声明(下面是完整类):

package com.test.json;
导入java.util.HashMap;
导入java.util.Map;
导入javax.annotation.Generated;
导入com.fasterxml.jackson.annotation.JsonAnyGetter;
导入com.fasterxml.jackson.annotation.JsonAnySetter;
导入com.fasterxml.jackson.annotation.JsonIgnore;
导入com.fasterxml.jackson.annotation.JsonInclude;
导入com.fasterxml.jackson.annotation.JsonProperty;
导入com.fasterxml.jackson.annotation.JsonPropertyOrder;
导入org.apache.commons.lang.builder.EqualsBuilder;
导入org.apache.commons.lang.builder.HashCodeBuilder;
导入org.apache.commons.lang.builder.ToStringBuilder;
@JsonInclude(JsonInclude.Include.NON_NULL)
@生成(“org.jsonschema2pojo”)
@JsonPropertyOrder({
“计数”
})
公共类目录{
/**
* 
*/
@JsonProperty(“计数”)
私人重复计数;
@杰索尼奥雷
私有映射additionalProperties=new HashMap();
/**
* 
*@返回
*伯爵
*/
@JsonProperty(“计数”)
公共双精度getCount(){
返回计数;
}
/**
* 
*@param计数
*伯爵
*/
@JsonProperty(“计数”)
公共无效设置计数(双重计数){
这个.arpu=计数;
}
@凌驾
公共字符串toString(){
返回到stringbuilder.reflectionString(this);
}
@凌驾
公共int hashCode(){
返回HashCodeBuilder.reflectionHashCode(this);
}
@凌驾
公共布尔等于(对象其他){
返回EqualsBuilder.reflectionEquals(此,其他);
}
@JsonAnyGetter
公共映射getAdditionalProperties(){
返回此。附加属性;
}
@JSONANYSETER
public void setAdditionalProperty(字符串名称、对象值){
this.additionalProperties.put(名称、值);
}

}
这与jsonschema无关。Json模式没有指定如何在编程语言中创建类型。关于您的问题,我看到的唯一可能的解决方案是只生成一次POJO,然后在发生此更改时手动更改映射到模式。我怀疑是否存在一个通用的解决方案(事实上,在这个类型生成中使用json模式是非常有限的)。
@JsonProperty("count")
private Double count;