Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 18884|Răspunde: 1

[Sursă] Fastjson JSONField deserialization invalid solution

[Copiază linkul]
Postat pe 11.01.2019 10:51:31 | | | |
Am folosit Fastjson de la Alibaba pentru a serializa și deserializa obiecte, pentru că șirurile mele json originale erau toate a, b, c... Astfel de litere sunt reprezentate, dar le serializez în obiecte și nu pot defini obiectele ca proprietăți lipsite de sens.
Aici se folosesc adnotări JSONField.

@JSONField diferența dintre a pune pe un câmp și metoda get set

  • care specifică atât operațiunile de serializare, cât și cele de deserializare
  • Pune pe get, specificând operația la serializare
  • set, specifică operația la deserializare



După ce îl folosesc, poate fi serializat normal, dar nu poate fi deseriarizat normal, așa cum se arată în figura de mai jos:


Coarda JSON:

{"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}


Cauzele erorii:

Proprietățile obiectelor nu urmează nomenclatura cocoașului din Java, cu toate cuvintele cu majuscule, cu excepția primului. De exemplu

în myStudentCount;
Variabila myStudentCount este doar cu litere mici, iar prima literă a cuvântului este scrisă cu majusculă.

Soluție:

Modificați numele atributului obiect și regenerați metoda get/set cu următorul cod:

Pentru atributele corecte, deseriarizarea reușește, așa cum se arată în imaginea următoare:







Precedent:Cărți electronice la locul de muncă
Următor:Formatul PFD este de asemenea amestecat cu alte cărți
 Proprietarul| Postat pe 14.01.2019 16:29:58 |
Am renunțat la fastjson și am trecut la Jackson, și am dat peste open source-ul Alibaba.
Iată cum să o folosești:

pop.xml



Obiecție JAVA la JSON [Serializare JSON]



Clase JSON către Java [deserializare JSON]



Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com