只是不要使用任何转换器,而是自己编写循环代码:
List<Object[]> rows = query.list();Parent parent = null;List<Child> children = new ArrayList<Child>(rows.size());for (Object[] row : rows) { parent = (Parent) row[0]; children.add((Child) row[1]);}ParentChildWrapper result = new ParentChildWrapper(parent, children);这使得8行琐碎代码代替了1行,但是避免了反射调用,因此可以安全地进行重构。



