Ez a cikk egy tükör gépi fordítás, kérjük, kattintson ide, hogy ugorjon az eredeti cikkre.

Nézet: 18884|Válasz: 1

[Forrás] Fastjson JSONField deserialization invalid solution

[Linket másol]
Közzétéve 2019. 01. 11. 10:51:31 | | | |
Az Alibaba Fastjsonját használtam objektumok serializálásához és deserializálásához, mert az eredeti json stringjeim mind a, b, c voltak... Az ilyen betűk képviseletben vannak, de én soriálissá alakítom őket objektumokká, és nem tudom olyan értelmetlen tulajdonságokat meghatározni.
JSONField megjegyzéseket használnak itt.

@JSONField a különbség a mező felhelyezése és a get set módszer között

  • a mező, amely mind a serializációs, mind a deserializációs műveleteket meghatározza,
  • Kapcsold be a get-t, és megadod a műveletet a serializáláskor
  • set, deserializáláskor megadja a műveletet



Miután használom, normálisan sorolható lehet, de nem lehet normálisan deserializálni, ahogy az alábbi ábrán látható:


JSON String:

{"a":"shenzhou","b":"Jing Q7UB02","c":110000,"d":"2019-01-08T17:07:04+08:00","e":120.775085,"f":30.13825,"g":77,"h":171,"i":0,"j":4951,"k":2,"l":0,"m":0,"n":4,"o":"0","p" :1}


A hiba okai a következők:

Az objektumok tulajdonságai nem követik a Java húpos elnevezését, az első szó kivételével minden nagybetűvel van írva. Például

int myStudentCount;
A myStudentCount változó mind kisbetűkből áll, és a szó utána következő első betű nagybetűvel van írva.

Megoldás:

Módosítsuk az objektum attribútumának nevét, és generáljuk újra a get/set metódust a következő kóddal:

A helyes attribútumok esetén a deserializáció sikeres, ahogy az alábbi képen is látható:







Előző:Munkahelyi e-könyvek
Következő:A PFD formátum más könyvekkel is keveredik
 Háziúr| Közzétéve 2019. 01. 14. 16:29:58 |
Feladtam a fastjson-t, váltottam Jacksonra, és találkoztam az Alibaba nyílt forráskódjával.
Íme, hogyan lehet használni:

pop.xml



JAVA Object a JSON-ra [JSON serializáció]



JSON-tól Java osztályokig [JSON deserializáció]



Lemondás:
A Code Farmer Network által közzétett összes szoftver, programozási anyag vagy cikk kizárólag tanulási és kutatási célokra szolgál; A fenti tartalmat nem szabad kereskedelmi vagy illegális célokra használni, különben a felhasználók viselik az összes következményet. Az oldalon található információk az internetről származnak, és a szerzői jogi vitáknak semmi köze ehhez az oldalhoz. A fenti tartalmat a letöltés után 24 órán belül teljesen törölni kell a számítógépéről. Ha tetszik a program, kérjük, támogassa a valódi szoftvert, vásároljon regisztrációt, és szerezzen jobb hiteles szolgáltatásokat. Ha bármilyen jogsértés történik, kérjük, vegye fel velünk a kapcsolatot e-mailben.

Mail To:help@itsvse.com