Validierung von JSON mit GSON in java
Ich bin mit GSON zu validieren, die einen string im JSON-format:
String json="{'hashkey':{'calculatedHMAC':'f7b5addd27a221b216068cddb9abf1f06b3c0e1c','secretkey':'12345'},operation':'read','attributes':['name','id'],'otid':'12'}";
Gson gson=new Gson();
Response resp = new Response();
RequestParameters para = null;
try{
para = gson.fromJson(json, RequestParameters.class);
}catch(Exception e){
System.out.println("invalid json format");
}
Seine Weise gut, aber wenn ich entfernen Sie die Anführungszeichen wie unten, habe ich entfernt von hashkey:
"{hashkey':{'calculatedHMAC':'f7b5addd27a221b216068cddb9abf1f06b3c0e1c','secretkey':'12345'},operation':'read','attributes':['name','id'],'otid':'12'}"
Es ist immer noch die Validierung einen richtigen JSONformat und nicht das werfen einer Ausnahme-und nicht im Körper fangen. Einen Grund, warum es ist, das zu tun? Wie würde ich dieses Problem lösen?
RequestParameters Klasse:
public class RequestParameters {
HashKey hashkey;
String operation;
int count;
int otid;
String[] attributes;
}
- Bitte posten Sie Ihre RequestParameters Klasse als gut, so können wir sehen, welche Felder der Zuordnung zu.
- Siehe auch Wie um zu überprüfen, ob JSON ist gültig in Java mit GSON auf der Arbeit gson strengen Analyse Abhilfe.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nun ist es zu behandeln, wird zweite Zitat, das als Teil der hashkey. Haben Sie einen Blick auf unten json-string aus dem Objekt.
Getestet habe ich es auf jsonlint
Beispielcode:
Lesen Sie mehr...