将JSON转换为Getter / Setter语句

时间:2015-09-24 14:25:29

标签: java json

我知道那里有一些实用工具可以使用一个大的嵌套JSON对象,并为它生成Java POJO。

但是有没有任何实用程序会采用相同的JSON,并假设POJO已经存在,创建getter和setter语句,实际用JSON中的数据填充POJO?

鉴于这个小型JSON示例,我正在寻找一个实用程序来生成:

data.setSiteId(422950);

等等。它是一个非常大的JSON对象。

{
    "data": {
        "siteId": 422950,
        "protocol": 1,
        "networkId": 253762,
        "comsNetworkId": 0,
        "circuitIds": [
            "A",
            "B",
            "C",
            "D",
            "E",
            "F"
        ],
        "comsCircuitId": "",
        "corpId": "",
        "networkAccessType": 1,
        "localExchangeCarrier": 19,
        "ldCarrier": 1,
        "isdnServiceType": 4,
        "primarySwitchType": 6,
        "t1PriTimeslots": "",
        "centralOfficeSwitchType": 5,
        "framingMode": 4,
        "signaling": 7,
        "encoding": 4,
        "isdnLineFromCentrex": false,
        "sharedDALTestPassed": false,
        "t120": false
    }
}

2 个答案:

答案 0 :(得分:0)

您可以在

中简单地使用JSONObject类
    <dependency>
        <groupId>org.json</groupId>
        <artifactId>json</artifactId>
        <version>20141113</version>
    </dependency>

答案 1 :(得分:0)

你应该看一下XStream,它只需几行就能完成你想要的。基本上:

YourPojo buildObjectFromString(String xmlString) { 
   XStream xStream = new XStream(new DomDriver());
   xStream.alias("data", YourPojo.class);

   return (YourPojo)xStream.fromXML(xmlString);
}


<dependency>
   <groupId>xstream</groupId>
   <artifactId>xstream</artifactId>
   <version>1.2.2</version>
</dependency>