使用Spring JDBC Rowmapper映射分层数据

时间:2013-12-20 07:27:03

标签: java spring spring-mvc spring-jdbc

我有一个父子层次结构,我通过维护自己的外键存储在单个表中。我的表格列为ID, Name, ParentID。在这里,ParentID引用了同一个表的ID列。

我的模型类就像,

Class Model
{
    private int id;
    private String name;
    private Model parent;
    private List<Model> children;
}

如何使用RowMapper映射此模型中的数据?或者,实现这一目标的最佳方法是什么?

我正在单个查询中检索整个层次结构。

1 个答案:

答案 0 :(得分:0)

在RowMapper中创建一个字段 - 地图。解析结果时,每个模型项也会在地图中,其中key是项的id。

要将子项添加到适当的父项,请通过curretn项的父ID从地图中读取父模型元素。

要提两件事

Root元素没有父元素。 您的查询应提供正确的顺序(必须先处理父级)