2012-02-21 9 views
0

にJSONとして単一の値をストリームIは、次の形式全体JSONマップ

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

などのJSONを有します。

FILEAが大きすぎて開いてメインメモリに読み込むことができません。 Javaを使用してメインメモリを大量に使用せずにこのjsonをWebサービスにストリーミングできるオプションはありますか?

例えば、 writer = new JsonWriter(新しい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の内容は

{ "名": "messagesPart1messagesPart2messagesPart3"}である私はあなたがJSONのためにジャクソンライブラリ(最も強力なのいずれかを使用することをお勧めします

+0

あなたはおそらくhttp://stackoverflow.com/questions/444380/is-there-a-streaming-api-for-json投稿のようなものを探していますか? – Pavan

答えて

0

Java)。

JsonをOutpuStreamにストリームする機能があります(コンテンツを出力するためにウェブソケットまたはオープンな接続を持つことができます)。ここに高レベルの文書:Generatorがあります。

あり、この発電機を利用したユースケース(Twittter)がこのpost

を確認し、またあるしかしJaksonクイックスタートも良いintroduction

+0

私は本当のジャクソンに行ってしまったが、キーバリューペアの値の部分だけを流す方法が明確ではない。 –

+0

私はwriter.name( "Content")のようなものを見たいと思っていました。値(BufferedStream) –

+0

実際にはこれは意味がありません。私の推測では、オブジェクト全体をストリームする必要があります。 –

関連する問題