我想使用 Spring Data JDBC 映射导航。 有一个聚合根,其中包含“目录”类型的对象。 例如,目录应该是一个路径和一组有序的子目录。 我如何使用 Spring Data JDBC 实现这一目标?
public class Hierarchy {
@Id
private String id;
private Directory root;
}
public class Directory {
private String path;
private Set<Directory> children = new LinkedHashSet<>();
public Directory(String path) {
this.path = path;
}
}
Spring Data JDBC 不直接支持这样的递归结构,但这并不意味着您不能使用它来存储它们。
我会做的是:
将所有目录存储在
List
中 Hierarchy
保留对父级
Directory
的引用,作为简单的int
引用保存父级Directory
的列表索引。
在聚合构建期间/之后创建其余代码所需的任何结构。