передавать одно значение в виде JSON на всю карту JSON - PullRequest
0 голосов
/ 21 февраля 2012

У меня есть JSON следующего формата

{ "a":"b" , "Content" : <Content of file FILEA> , "x" : y" }

и т. Д.

FILEA слишком велик, поэтому я не могу открыть его и загрузить в основную память.Есть ли вариант, где я могу передать этот JSON на веб-сервис, не используя большую часть основной памяти с помощью Java.

Например, было бы здорово, если есть что-то вроде writer = new JsonWriter (new FileWriter ("user.json "));

writer.beginObject(); // {
writer.name("name");
writer.value("messagesPart1"); // "messages" : 
    writer.flush();
    writer.value("messagesPart2"); // "messages" :
    writer.flush(); 
writer.value("messagesPart3"); // "messages" : 
writer.endObject();
    }

А содержимое файла user.json fie равно

{" name ":" messagesPart1messagesPart2messagesPart3 "}

Ответы [ 2 ]

0 голосов
/ 23 февраля 2012

Эта ссылка на блог содержит некоторую полезную информацию - http://architectvm.blogspot.in/2012/02/stream-single-value-as-json-in-whole.html

0 голосов
/ 21 февраля 2012

Я рекомендую вам использовать библиотеку Джексона (одну из самых мощных для Json в Java).

Он имеет функцию для потоковой передачи Json в OutpuStream (чтобы вы могли иметь веб-сокет или открытое соединение для вывода содержимого ...). Вот документация высокого уровня: Генератор .

Существует также сценарий использования (Twittter), который использует этот генератор, проверьте этот пост

Но у быстрого старта Jakson есть и хорошее введение

...