Przetwarzanie JSON w Spring MVC przy użyciu JSON Jacksona


Tak więc patrzę na to od jakiegoś czasu i nie zamierzam iść dalej. Mam serwlet Spring MVC, który musi akceptować JSON z aplikacji internetowej typu front-end JavaScript. Aby przeanalizować JSON, muszę użyć Jacksona. Muszę wziąć wartości wewnątrz JSON i zapisać je na liście w kolejności, w jakiej pojawiają się w JSON. Próbowałem użyć JsonFactory z obiektami JsonParser i JsonNode, ale mogę całkiem zmusić to do pracy. Próbowałem też po prostu otworzyć BufferedReader i iterować po linii tekstu żądania, ale znowu nie mogę tego zrobić. Spojrzałem tutaj na kilka powiązanych pytań, ale żadne z nich do tej pory nie zadziałało.
Czy ktoś wtajemniczony może wskazać mi tutaj właściwy kierunek, proszę, strona internetowa z przykładem byłaby świetna!
Zaproszony:
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Cały sens korzystania z technologii wyświetlania, takiej jak Jackson, polega na tym, że możesz używać obiektów (nie musisz samodzielnie analizować JSON).
Zdefiniuj klasę Java, która wygląda jak oczekiwany kod JSON.
na przykład to JSON:
{
"foo" : ["abc","one","two","three"],
"bar" : "true",
"baz" : "1"
}

można przypisać do tej klasy:
public class Fizzle{
private List<String> foo;
private boolean bar;
private int baz;
// getters and setters omitted
}

Teraz, jeśli masz taką metodę kontrolera:
@RequestMapping("somepath")
@ResponseBody
public Fozzle doSomeThing(@RequestBody Fizzle input){
return new Fozzle(input);
}

a jeśli przekażesz JSON z góry, Jackson automatycznie utworzy dla ciebie obiekt Fizzle i serializuje reprezentację JSON zwróconego obiektu do odpowiedzi z typem MIME
application/json
.
Kompletny przykład roboczy

zobacz moją poprzednią odpowiedź
https://coderoad.ru/5908466/
.
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Używam biblioteki JSON z

http://json-lib.sourceforge.net
http://json-lib.sourceforge.net/
/

json-lib-2.1-jdk15.jar
import net.sf.json.JSONObject;...public void send()
{
//put attributes
Map m = New HashMap();
m.put("send_to","my@admin.lan");
m.put("email_subject","this is a test email");
m.put("email_content","test email content");//generate JSON Object
JSONObject json = JSONObject.fromObject(content);
String message = json.toString();
...
}public void receive(String jsonMessage)
{
//parse attributes
JSONObject json = JSONObject.fromObject(jsonMessage);
String to = (String) json.get("send_to");
String title = (String) json.get("email_subject");
String content = (String) json.get("email_content");
...
}

Więcej próbek tutaj

http://json-lib.sourceforge.net/usage.html
http://json-lib.sourceforge.net/usage.html

Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się