public class DefaultRowAggregator extends Object implements RowAggregator
| 限定符和类型 | 类和说明 |
|---|---|
static class |
DefaultRowAggregator.PrimaryObjectKey |
| 构造器和说明 |
|---|
DefaultRowAggregator() |
| 限定符和类型 | 方法和说明 |
|---|---|
protected Map<Object,List<Object[]>> |
groupById(IdField idField,
List<Object[]> instanceCompound) |
protected void |
mergeMultipleRows(Object mainPojo,
TableNode root,
List<Object[]> instanceCompound)
递归合并属性
|
List<?> |
mergeRow(TableInfo tableInfo,
FieldAccessor fieldAccessor,
List<Object[]> instanceCompound)
合并一对多映射,多条数据合并至一个pojo实例中
eg:
当一张表与另一张表存在一对多映射,此时进行join联查,将产生多条数据
需要将多条数据聚合,实际上,聚合器带来的性能影响非常小
|
protected void |
mergeSingleRow(Object mainPojo,
TableNode root,
Object[] instances) |
protected boolean |
notMatched(TableNode node,
Object mainPojo,
Object pojo,
Class<?> pojoType) |
protected boolean |
qualified(Object mainPojo,
Object target,
List<On> conditions)
根据关联条件进行对象赋值
|
public List<?> mergeRow(TableInfo tableInfo, FieldAccessor fieldAccessor, List<Object[]> instanceCompound)
RowAggregatormergeRow 在接口中 RowAggregatorinstanceCompound - 平铺的实例集合protected Map<Object,List<Object[]>> groupById(IdField idField, List<Object[]> instanceCompound)
protected void mergeMultipleRows(Object mainPojo, TableNode root, List<Object[]> instanceCompound)
mainPojo - 主对象root - 遍历表结构的节点instanceCompound - 平铺的对象实例集合protected boolean notMatched(TableNode node, Object mainPojo, Object pojo, Class<?> pojoType)
Copyright © 2022. All rights reserved.