6

我想从给定的 JSON Schema Draft 4 版本生成 JAVA 类

我评估了几个工具,发现jsonschema2pojo很有用。但它仅支持 json schema draft-3 版本(尽管 json schema draft 4 在他们的路线图中)。

任何人都可以建议我从 json 模式(符合 json 模式草案 4)生成 java 类的工具或方法吗?提前致谢。

4

1 回答 1

0

你可以试试cog,一个用 Ruby 编写的通用代码生成器。我在 github 上放了一个名为json2java的简单项目,它演示了如何使用 cog 从 json 数据生成 Java 类。

不确定您到底想做什么,但这是我的假设。json 数据看起来像这样

{
    "classname": "Sample",
    "methods": [
        {
            "name": "foo",
            "rtype": "void",
            "params": [
                {
                    "name": "arg1",
                    "type": "int"
                }
            ]
        },
        {
            "name": "bar",
            "rtype": "int",
            "params": []
        }
    ]
}

相应的 Java 类看起来像这样

public class Sample {

    void foo(int arg1) {
// keep: foo {
        // While the interface in this example is generated,
        // the method bodies are preserved between multiple invocations
        // of the generator.

        // It doesn't have to be done this way, the method bodies can be
        // generated aswell, all depends on what your json data encodes
// keep: }
    }

    int bar() {
// keep: bar {
        return 1;
// keep: }
    }

}

如果您想尝试 cog,请像这样安装它gem install cog,然后像这样运行生成器cog gen。查看 cog 主页以获取文档。

于 2013-03-26T00:26:30.667 回答