See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 18884|Vastuse: 1

[Allikas] Fastjson JSONField deserialiseerimine kehtetav lahendus

[Kopeeri link]
Postitatud 11.01.2019 10:51:31 | | | |
Kasutasin Alibaba Fastjsoni objektide serialiseerimiseks ja deserialiseerimiseks, sest minu algsed json-stringid olid kõik a, b, c... Sellised tähed on esindatud, kuid ma serialiseerin need objektideks ega saa objekte defineerida kui tähendusetuid omadusi.
JSONField annotatsioone kasutatakse siin.

@JSONField erinevus väljaku paigaldamise ja "get set" meetodi vahel

  • välja, määratledes nii serialiseerimise kui ka deserialiseerimise operatsioonid
  • Pane get peale, määrates operatsiooni seriaalimisel
  • set, määrab operatsiooni deserialiseerimisel



Pärast kasutamist saab seda tavapäraselt serialiseerida, kuid seda ei saa tavapäraselt deserialiseerida, nagu alloleval joonisel näidatud:


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}


Viga põhjustab:

Objektide omadused ei järgi Java kühmunimetust, kus kõik peale esimese sõna on suurtähtedega. Näiteks

int myStudentCount;
Muutuja myStudentCount on kõik väiketähtedega ning sõna esimene täht pärast seda on suurtähtedega.

Lahus:

Muuda objekti atribuudi nime ja genereeri get/set meetod uuesti järgmise koodiga:

Õigete atribuutide puhul õnnestub deserialiseerimine, nagu näitab järgmine pilt:







Eelmine:Töökoha e-raamatud
Järgmine:PFD formaat on samuti segatud mõnede teiste raamatutega
 Üürileandja| Postitatud 14.01.2019 16:29:58 |
Olen Fastjsonist loobunud ja vahetanud Jacksoni vastu, ning sattusin Alibaba avatud lähtekoodiga.
Siin on, kuidas seda kasutada:

pop.xml



JAVA Object JSON-ile [JSON-i serialiseerimine]



JSON-ist Java klassidesse [JSON-i deserialiseerimine]



Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com