powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Gson - при парсинге null object?
10 сообщений из 10, страница 1 из 1
Gson - при парсинге null object?
    #37933822
_webdev_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравств,
Подскажите, почему не получается нормально распарсить json.

Вот такой вот json приходит на сервер 1 или больше строк.

Код: java
1.
2.
3.
4.
{
"H5":{"coord":"H5","datavalue":"dd","datatype":"t","formula":"","valuetype":"t","displaystring":"dd"},
"H6":{"coord":"H6","datavalue":222,"datatype":"v","formula":"","valuetype":"n","displaystring":"222"}
}




Вот так пробую парсить, причем если пройтись по br и вытащить оттуда объект, то поличит вот тот самый json что я написал выше.
ТОисть br не пустой!

Код: java
1.
2.
3.
  BufferedReader br = request.getReader();
  Gson gson = new Gson();
  JsonObject jsonObject = (JsonObject)gson.fromJson(br, JsonObject.class);



И вот так выглядит мой JsonObject.
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
public class JsonObject {

 private String coord;
 private int datavalue;
 private String datatype;
 private String formula;
 private String valuetype;
 private String displaystring;
 
}



Я вот не могу понять, что делается если приходит например 1000 json элементов?
Куда эти объекты сохраняются? Или мне самому стоит это определить?
Вот здесь смотрел примеры, но что-то или пропустил или не так..

http://www.mkyong.com/java/how-do-convert-java-object-to-from-json-format-gson-api/
http://java.dzone.com/articles/how-post-and-get-json-between

Спасиб за помощь!
...
Рейтинг: 0 / 0
Gson - при парсинге null object?
    #37933854
забыл ник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Меня смущает "datavalue":"dd" private int datavalue;
Эт раз,
Ниче не понял что у вас в итоге не получается и в чем требуется конкретно помощь эт два
...
Рейтинг: 0 / 0
Gson - при парсинге null object?
    #37933872
_webdev_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
забыл никМеня смущает "datavalue":"dd" private int datavalue; - ах да, правильно подмечено, там должны быть только int результаты, я по ошибке отправил в datavalue string.

забыл никНиче не понял что у вас в итоге не получается и в чем требуется конкретно помощь эт два - в итоге у меня jsonObject получает все свойства по нулям.
...
Рейтинг: 0 / 0
Gson - при парсинге null object?
    #37933879
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у вас приезжает объект со свойствами H5 и H6, а вы почему-то сразу пытаетесь внутренние подобъекты получить.
...
Рейтинг: 0 / 0
Gson - при парсинге null object?
    #37933883
_webdev_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Или если конкретней, то что мне дописать, написать, исправить, чтоб распарсить json-объект из BufferedReader в свой объект или в просто в Object?
...
Рейтинг: 0 / 0
Gson - при парсинге null object?
    #37933891
_webdev_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Blazkowiczу вас приезжает объект со свойствами H5 и H6, а вы почему-то сразу пытаетесь внутренние подобъекты получить. - это понимаю, но не знаю как правильно эти объекты парсить, в том и вопрос.
Спасибо.
...
Рейтинг: 0 / 0
Gson - при парсинге null object?
    #37933917
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
https://sites.google.com/site/gson/gson-user-guide#TOC-Serializing-and-Deserializing-Collection-with-Objects-of-Arbitrary-Types Option 1: Use Gson's parser API (low-level streaming parser or the DOM parser JsonParser) to parse the array elements and then use Gson.fromJson() on each of the array elements.This is the preferred approach. Here is an example that demonstrates how to do this.
Option 2: Register a type adapter for Collection.class that looks at each of the array members and maps them to appropriate objects. The disadvantage of this approach is that it will screw up deserialization of other collection types in Gson.
Option 3: Register a type adapter for MyCollectionMemberType and use fromJson with Collection<MyCollectionMemberType>
This approach is practical only if the array appears as a top-level element or if you can change the field type holding the collection


или вот ещё пример
http://stackoverflow.com/questions/2779251/convert-json-to-hashmap-using-gson-in-java
обрабатываем верхний объект в стиле DOM/SAX парсера. А внутрений серализацией. Результат складываем в HashMap
...
Рейтинг: 0 / 0
Gson - при парсинге null object?
    #37933932
J2SE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
_webdev_,

в первой ссылке есть ответ

авторI know two solutions:

a) Instantiate the object

Код: java
1.
2.
ArrayList doList=new ArrayList;
doList=gson.fromJson(theString, doList.class);


But I don’t like it too much as instatiating has a cost

b) create your list class:

First create a class for the list

public class DataObjects extends ArrayList {}

And then use this class:

Код: java
1.
2.
DataObjects objects;
objects=gson.fromJson (theString, DataObjects.class);


I think this method makes clearer code and it’s useful if you new more methods in the collection (like search or classification functionalities)
...
Рейтинг: 0 / 0
Gson - при парсинге null object?
    #37934025
_webdev_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Приблизительно понятно, сейчас буду пробовать.
А что делать если названия объектов динамические?
тоисть
{
H3{},
H33{},
S4{},
.......
}
...
Рейтинг: 0 / 0
Gson - при парсинге null object?
    #37934045
_webdev_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем спасибо, все прекрасно парсится в HashMap, и не нужно своей структуры.!
Думаю вопрос решен!
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Gson - при парсинге null object?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]