2012-05-19 2 views
0

Я использовал Netbeans IDE 7.1.2. Чтобы создать RESTFUL Webservices из базы данных. Я протестировал методы GET/SET с помощью контекстного меню IDE Test RESTful Web Services. Дело в том, что формат application/json не содержит имя класса. Он просто дает мне массив объектов с соответствующим значением полей экземпляра. Вот что я получаюОбъект JSON не содержит имени класса

[{"id":1129,"salary":4212,"numberOfCars":9},{"id":3300,"salary":101,"numberOfCars":6}, 
{"id":3323,"salary":315,"numberOfCars":5},{"id":8983,"salary":756,"numberOfCars":1}, 
{"id":23422,"salary":537,"numberOfCars":2}] 

Название этого класса клиента, и я пытаюсь разобрать этот JSON данные в Android приложения, но без имени класса перебрать, я потерял. Любые идеи? Заранее спасибо

+0

Да, точно так же, как стандарт JSON. Что ты пытаешься сделать? Почему вы потерялись? Какой у вас соответствующий Android-код? – Amadan

+0

Я пытаюсь получить объекты с сервера и отображать их в ListView в своем Android-коде. Парсеры JSON, которые я видел до сих пор, используют это имя класса для анализа данных. – Abraham

ответ

1

Во всех парсерах, которые я видел, имя класса никогда не внутри JSON. Вы должны знать, что содержит JSON, прежде чем идти и разобрать его. Например, GSON (с верхней части головы):

class Dude { 
    int id; 
    int salary; 
    int numberOfCars; 
} 

Dude[] dudez = gson.fromJson(json, Dude[].class); 
+0

Для меня, чтобы сказать, что Dude []. Класс, Dude должен быть определен и в клиенте. У меня такое чувство, что это неправильно; или это? – Abraham

+0

Неважно, как вы создаете свой JSON. Вы можете прочитать JSON из статического текстового файла, вы можете распечатать его из JavaScript ad-hoc, вы можете сгенерировать его с другой библиотекой Java, например, с Джексоном, с помощью 'Map ' вместо 'Dude' ... независимо от источника , вышесказанное может прочитать его. – Amadan

Смежные вопросы