Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 18884|Svare: 1

[Kilde] Fastjson JSONField deserialization invalid solution

[Kopier lenke]
Publisert på 11.01.2019 10:51:31 | | | |
Jeg brukte Alibabas Fastjson til å serialisere og deserialisere objekter, fordi mine opprinnelige json-strenger alle var a, b, c... Slike bokstaver er representert, men jeg serialiserer dem til objekter, og jeg kan ikke definere objekter som slike meningsløse egenskaper.
JSONField-annotasjoner brukes her.

@JSONField forskjellen mellom å sette på et felt og get set-metoden

  • felt, som spesifiserer både serialiserings- og deserialiseringsoperasjoner
  • Sett på get, og spesifiserer operasjonen når du serialiserer
  • sett, spesifiserer operasjonen ved deserialisering



Etter at jeg har brukt den, kan den seriell gjøres normalt, men den kan ikke deserialiseres normalt, som vist i figuren nedenfor:


JSON-strengen:

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


Feilårsaker:

Egenskapene til objekter følger ikke Javas hump-nomenklatur, med alt unntatt det første ordet skrevet med stor forbokstav. For eksempel

int myStudentCount;
Variabelen myStudentCount er bare med liten bokstav, og den første bokstaven i ordet etterpå er skrevet med stor forbokstav.

Løsning:

Endre navnet på objektattributtet og regenerer get/set-metoden med følgende kode:

For de riktige attributtene lykkes deserialisering, som vist i følgende bilde:







Foregående:Arbeidsplass-e-bøker
Neste:PFD-formatet er også blandet med noen andre bøker
 Vert| Publisert på 14.01.2019 16:29:58 |
Jeg har gitt opp fastjson og byttet til Jackson, og jeg kom over Alibabas åpne kildekode.
Slik bruker du den:

pop.xml



JAVA-innvending mot JSON [JSON-serialisering]



JSON til Java-klasser [JSON-deserialisering]



Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com