[英]How can I write the most elegant way to make json in java?
如何在 java 中编写最优雅的方法来制作 json?
这是 json 的值。
{
"R01": {
"time": "2021-12-15 16:01:19",
"status": "STOP",
"direction": "STOP",
"pos": 500,
"schID": "",
"schTime": "",
"ptz": "0.2/0.0/0",
"battery": 27.7,
"batterystatus": "USE",
"sensors": {
"sTemp": 24.3,
"sHumi": 28.4,
"sO2": 20.5,
"sCO": 0.0,
"sCO2": 0.04,
"sNO2": 0.0,
"sH2S": 0.0,
"sIRMax": 10.3,
"sIRMin": 5.7,
"sIRMean": 7.1
}
},
"R02": {
"time": "2021-12-15 16:01:19",
"status": "DCON"
}
}
编写了以下 java 以制作此 json 格式。
LinkedHashMap<String, Object> result = new LinkedHashMap<>();
LinkedHashMap<String, Object> sensor = new LinkedHashMap<>();
sensor.put("sTemp", String.valueOf(ThreadLocalRandom.current().nextInt(15, 35)));
sensor.put("sHumi", String.valueOf(ThreadLocalRandom.current().nextInt(40, 60)));
sensor.put("sO2", String.valueOf(ThreadLocalRandom.current().nextInt(0, 30)));
sensor.put("sCO", String.valueOf(ThreadLocalRandom.current().nextInt(0, 30)));
sensor.put("sCO2", String.valueOf(ThreadLocalRandom.current().nextInt(0, 30)));
sensor.put("sNO2", String.valueOf(ThreadLocalRandom.current().nextInt(0, 30)));
sensor.put("sH2S", String.valueOf(ThreadLocalRandom.current().nextInt(0, 30)));
sensor.put("sIRMax", String.valueOf(ThreadLocalRandom.current().nextInt(15, 35)));
sensor.put("sIRMin", String.valueOf(ThreadLocalRandom.current().nextInt(15, 35)));
sensor.put("sIRMean", String.valueOf(ThreadLocalRandom.current().nextInt(15, 35)));
LinkedHashMap<String, Object> robotInfo = new LinkedHashMap<>();
robotInfo.put("time", LocalDate.now());
robotInfo.put("status", "CHK");
robotInfo.put("direction", "STOP");
robotInfo.put("pos", String.valueOf(ThreadLocalRandom.current().nextInt(100, 600)));
robotInfo.put("schID", "");
robotInfo.put("schTime", "");
robotInfo.put("ptz", "53.0/0.0/1");
robotInfo.put("battery", "27.5");
robotInfo.put("batterystatus", "USE");
robotInfo.put("sensors", sensor);
// Robot #2
I wrote a code similar to the above.
我手动编写如下,但我想知道是否可以将其更改为更清洁和更智能的代码。
对于“流利”的创建,您应该查看 JsonObjectBuilder。
It contains a useful example with the resulting JSON structure: https://docs.oracle.com/javaee/7/api/javax/json/JsonObjectBuilder.html
发现了一个类似的问题: How to fluently build JSON in Java?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.