在 MongoDB 和 Java 中,我正在使用闭包表概念构建二叉树。假设我的初始数据如下:
{
"userid" : "1", "parent" : "root", "position" : "",
"ancestry": ["1"]
}
# ...
{
"userid" : "7", "parent" : "5", "position" : "right",
"ancestry": ["1", "5", "7"]
}
{
"userid" : "10", "parent" : "7", "position" : "right",
"ancestry": []
}
插入新用户时,我想通过以下方式设置其祖先: - 获取父祖先 - 插入子祖先 - 然后添加子用户 ID(之后使用 addToSet 没有问题)
对于用户 3,结果将是:
"ancestry": ["1", "5", "7", "10"]
如何优雅地从父级获取数组,将其复制给子级?我正在使用 MongoDB Java Driver 3.x,请帮忙。
之前谢谢你。