Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 18884|Απάντηση: 1

[Πηγή] Fastjson JSONField deserialization invalid solution

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 11/1/2019 10:51:31 π.μ. | | | |
Χρησιμοποίησα το Fastjson της Alibaba για να σειριοποιήσω και να αποσειριοποιήσω αντικείμενα, επειδή οι αρχικές μου συμβολοσειρές json ήταν όλες a, b, c... Τέτοια γράμματα αναπαρίστανται, αλλά τα σειριοποιώ σε αντικείμενα και δεν μπορώ να ορίσω τα αντικείμενα ως τέτοιες ιδιότητες χωρίς νόημα.
Εδώ χρησιμοποιούνται σχολιασμοί JSONField.

@JSONField τη διαφορά μεταξύ της τοποθέτησης ενός γηπέδου και της μεθόδου get set

  • πεδίο, καθορίζοντας τόσο τις λειτουργίες σειριοποίησης όσο και τις λειτουργίες αποσειριοποίησης
  • Βάλτε το get, καθορίζοντας τη λειτουργία κατά τη σειριοποίηση
  • set, καθορίζει τη λειτουργία κατά την αποσειριοποίηση



Αφού το χρησιμοποιήσω, μπορεί να σειριοποιηθεί κανονικά, αλλά δεν μπορεί να αποσειριοποιηθεί κανονικά, όπως φαίνεται στο παρακάτω σχήμα:


Συμβολοσειρά 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}


Αιτίες σφάλματος:

Οι ιδιότητες των αντικειμένων δεν ακολουθούν την ονοματολογία της καμπούρας της Java, με όλες εκτός από την πρώτη λέξη με κεφαλαία. Για παράδειγμα

int myStudentCount;
Η μεταβλητή myStudentCount είναι μόνο πεζά και το πρώτο γράμμα της λέξης μετά από αυτήν γράφεται με κεφαλαία.

Λύση:

Τροποποιήστε το όνομα του χαρακτηριστικού αντικειμένου και δημιουργήστε ξανά τη μέθοδο get/set με τον ακόλουθο κώδικα:

Για τα σωστά χαρακτηριστικά, η αποσειριοποίηση επιτυγχάνεται, όπως φαίνεται στην παρακάτω εικόνα:







Προηγούμενος:Ηλεκτρονικά βιβλία στο χώρο εργασίας
Επόμενος:Η μορφή PFD αναμιγνύεται επίσης με κάποια άλλα βιβλία
 Σπιτονοικοκύρης| Δημοσιεύτηκε στις 14/1/2019 4:29:58 μ.μ. |
Εγκατέλειψα το fastjson και άλλαξα στο Jackson και συνάντησα τον ανοιχτό κώδικα της Alibaba.
Δείτε πώς να το χρησιμοποιήσετε:

pop.xml



Αντικείμενο JAVA στο JSON [Σειριοποίηση JSON]



JSON σε Java [Αποσειριοποίηση JSON]



Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com