Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 还序列化了带有注释的模式序列化_Java_Json_Jackson_Avro_Thrift Protocol - Fatal编程技术网

Java 还序列化了带有注释的模式序列化

Java 还序列化了带有注释的模式序列化,java,json,jackson,avro,thrift-protocol,Java,Json,Jackson,Avro,Thrift Protocol,我们希望序列化Java类的模式,以便任何字段或类上的所有注释也序列化到模式中 我还没有找到这样的工具 Avro不处理非字符串映射键,FasterXML不处理循环引用。 它们都不会将注释序列化到模式中 有没有Java JSON反序列化程序可以做到这一点?Apache Thrift在大多数语言中都支持复杂的映射键,并且对JSON序列化有相当广泛的支持。类型循环自引用类型等最近被引入,但尚未在大量语言中发布或实现。也就是说,似乎有一个坚定的承诺,要在短期内将这一能力提升到波兰的高度 下面的内容将使用C

我们希望序列化Java类的模式,以便任何字段或类上的所有注释也序列化到模式中

我还没有找到这样的工具

Avro不处理非字符串映射键,FasterXML不处理循环引用。 它们都不会将注释序列化到模式中


有没有Java JSON反序列化程序可以做到这一点?

Apache Thrift在大多数语言中都支持复杂的映射键,并且对JSON序列化有相当广泛的支持。类型循环自引用类型等最近被引入,但尚未在大量语言中发布或实现。也就是说,似乎有一个坚定的承诺,要在短期内将这一能力提升到波兰的高度

<>下面的内容将使用C++的DVI干线来工作。< /P>
struct tree {
   1: tree left (cpp.ref="")
   2: tree right (cpp.ref="")
}

service simple {
   void hello(1: string msg, 2: tree t)
}
现在支持循环依赖。下面是一个适用于2.4.1版的示例:

public class JacksonSchemaCyclic {
    public static class Bean {
        @JsonPropertyDescription("This is a property description")
        public String anExample;
        public int anInt;
        public Bean aBean;
    }

    public static void main(String[] args) throws JsonProcessingException {
        ObjectMapper mapper = new ObjectMapper();
        SchemaFactoryWrapper visitor = new SchemaFactoryWrapper();
        mapper.acceptJsonFormatVisitor(Bean.class, visitor);
        JsonSchema jsonSchema = visitor.finalSchema();
        System.out.println(mapper
                .writerWithDefaultPrettyPrinter().writeValueAsString(jsonSchema));
    }
}
输出:

{
  "type" : "object",
  "id" : "urn:jsonschema:stackoverflow:JacksonSchemaCyclic:Bean",
  "properties" : {
    "aBean" : {
      "type" : "object",
      "$ref" : "urn:jsonschema:stackoverflow:JacksonSchemaCyclic:Bean"
    },
    "anInt" : {
      "type" : "integer"
    },
    "anExample" : {
      "type" : "string",
      "description" : "This is a property description"
    }
  }
}