Produzieren und Konsumieren von benutzerdefinierten RESTful-Services für JSON-Objekte im Frühjahr
Ich habe einige JSON-Objekte, die komplexer sind als die JSON-Darstellungen der Java-Objekte, die ich habe. Ich habe Methoden, die diese JSON-Objekte erstellen, und ich möchte diese direkt zurückgeben und verwenden. Ich benutzeorg.json
library zum Erstellen meiner JSONs. Ich könnte das @ bekommGET
-Methode, bei der das JSON-Objekt als @ zurückgegeben wiString
. Ist das die richtige Vorgehensweise?
@RequestMapping(value = "/getjson", method = RequestMethod.GET, produces="application/json")
@ResponseBody
public String getJson() {
JSONObject json = new JSONObject();
JSONObject subJson = new JSONObject();
subJson .put("key", "value");
json.put("key", subJson);
return json.toString();
}
Nun möchte ich wissen, wie ich ein JSON-Objekt verwende? Als String und in ein JSON-Objekt konvertieren?
@RequestMapping(value = "/post", method = RequestMethod.POST, produces="application/json", consumes="application/json")
@ResponseBody
public String post(@RequestBody String json) {
JSONObject obj = new JSONObject(json);
//do some things with json, put some header information in json
return obj.toString();
}
Ist dies der richtige Weg, um mein Problem zu lösen? Ich bin ein Anfänger, also weisen Sie freundlich auf alles hin, was besser gemacht werden kann. Bitte beachten Sie: Ich möchte keine POJOs zurückgeben.