我有一个父子层次结构,我通过维护自己的外键存储在单个表中。我的表格列为ID, Name, ParentID
。在这里,ParentID
引用了同一个表的ID
列。
我的模型类就像,
Class Model
{
private int id;
private String name;
private Model parent;
private List<Model> children;
}
如何使用RowMapper
映射此模型中的数据?或者,实现这一目标的最佳方法是什么?
我正在单个查询中检索整个层次结构。
答案 0 :(得分:0)
在RowMapper中创建一个字段 - 地图。解析结果时,每个模型项也会在地图中,其中key是项的id。
要将子项添加到适当的父项,请通过curretn项的父ID从地图中读取父模型元素。
要提两件事
Root元素没有父元素。 您的查询应提供正确的顺序(必须先处理父级)