Эта статья является зеркальной статьёй машинного перевода, пожалуйста, нажмите здесь, чтобы перейти к оригиналу.

Вид: 18884|Ответ: 1

[Источник] Fastjson JSONField deserialization invalid solution

[Скопировать ссылку]
Опубликовано 11.01.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}


Причины ошибок:

Свойства объектов не соответствуют яванской номенклатуре горба, при этом все, кроме первого слова, пишутся с заглавной буквы. Например

int myStudentCount;
Переменная myStudentCount состоит из строчной буквы, а первая буква слова после него пишется с заглавной буквы.

Решение:

Измените имя атрибута объекта и воссоздайте метод get/set следующим кодом:

Для правильных атрибутов десериализация успешна, как показано на следующем изображении:







Предыдущий:Электронные книги о рабочем месте
Следующий:Формат PFD также смешан с некоторыми другими книгами
 Хозяин| Опубликовано 14.01.2019 16:29:58 |
Я отказался от fastjson и перешёл на Jackson, и столкнулся с открытым исходным кодом Alibaba.
Вот как им пользоваться:

pop.xml



Объект JAVA в JSON [сериализация JSON]



Классы JSON в Java [десериализация JSON]



Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com