複雑なオブジェクトをツリー構造でシリアル化しようとしています。例:Gson - 一部のフィールドのシリアライズ
class Tree{
private Node1 rootNode;
private ArrayList<Node> allNodes;
}
class Node1 extends Node{
private String id;
private Node2 node2;
}
class Node2 extends Node{
private String id;
...
}
フィールドrootNodeには、JSON内のrootNodeIdのみが含まれている必要があります。それでも、実際のNode1オブジェクトがコード内に必要です。 Node1のNode2プロパティでも同じことができます。完全なオブジェクトはallNodes配列に格納されるため、そこに参照を保存するだけです。 JSONは次のようになります。
{Tree: {rootNodeId: 1, allNodes: [{id: 1, node2Id: 2}, {id: 2}]}}
どうすればいいですか?何かありがとう!
すべての説明と多くのサンプルコードでこの素晴らしい答えをありがとう!これは本当に私に多くの助けになります! – mapf
@mapfよろしくお願いします! –