2012-04-30 9 views
1

データベースのツリーの各行に対して、child_id、parent_idおよびその他の詳細を持つデータベースがあります。データベースから再帰的にデータを読み込み、各ルートノードの下で子アイテムがどの程度深く実行されているかわからないJSONを作成するための最良の方法を探しています。また、JSONの構文をプログラムに手作業で書く必要なく、JSONの作成に役立つものがありますか?どのポインタについても事前に感謝します。ツリーのデータ構造をデータベースからJavaのJSONに変換する

+0

http://stackoverflow.com/questions/338586/a-better-java-json-library and http://stackoverflow.com/questions/1688099/converting-json-to-java and http:// stackoverflow .com/search?tab = votes&q = [java]%20%2bjson – assylias

+0

google ... google ...(http://www.mkyong.com/tutorials/java-json-tutorials/) – Luca

答えて

0

データベースからアプリケーションレベルのデータを読み込んでツリー状のデータ構造を作成するのに役立つツールはありません。だから、これは自分で実装する必要があります。

エンティティを1つずつ読んで、読み込み中にツリーに配置することをお勧めします。

2番目の部分は簡単です。 Java-to-JSONツールはいくつかあります。 GoogleのGSONフォームここをクリックしてください:http://code.google.com/p/google-gson/ 2行のコードとツリーがJSONにシリアル化されています。

ご注意:ツリーをサポートしていますが、私の経験によれば、ループを持つグラフはサポートされていません。

+0

。私はデータを読んでそれをツリー構造に自分自身で整理しなければならないと思っていました。私の考えを検証してくれてありがとう。いくつかのレベルの子音を読み込んだ後、ツリー構造のデータを整理するための具体的な効率的な方法はありますか?また、gsonがjsonツリー構造を記述するためのデータはどのような形式ですか? – user1365990

0

データベースから読み込んでTreeオブジェクトを作成します。あなたはかなり簡単にこのようなものを使用することができます。

public class Node<T> { 
    public T content; 
    public List<Node<T>> children; 
} 

あなたは木、あなたはJSONにそのJavaオブジェクトに変換するためにFlexjsonのようなJSONシリアライザにそのオブジェクトを送信できることを建てたら。 Flexjsonには、子供が親ノードについて知っているようにグラフにループがあると、他のライブラリと同様に直列化に失敗しないという利点があります。

関連する問題