分页的查询方法传入参数dto实现了IPage接口 IPage queryPage(TestSearchDTO dto); 得到的结果是一个TestSearchDTO对象。 代码位于MybatisMapperMethod 的 executeForIPage private Object executeForIPage(SqlSession sqlSession, Object[] args) { //这里能否给个扩展功能,有时候查询的结果不想包含参数信息,如果可以得到一个new对象可能更好呢 IPage result = null; for (Object arg : args) { if (arg instanceof IPage) { result = (IPage) arg; break; } } Assert.notNull(result, "can't found IPage for args!"); Object param = method.convertArgsToSqlCommandParam(args); List list = sqlSession.selectList(command.getName(), param); result.setRecords(list); return result; }

Comment From: miemieYaho

正是因为basemapper#page的入参和返回是同一个对象才能现在这样,否则就只能返回list,你要返回其他的就自己写个util改写返回类

Comment From: FeiLong2014

正是因为basemapper#page的入参和返回是同一个对象才能现在这样,否则就只能返回list,你要返回其他的就自己写个util改写返回类

这个return前面给个convert能行吗 我们有开发人员直接返回了 很有可能泄露一些关键信息 转换是可以转换 但是没办法天天看他们代码呀

Comment From: miemieYaho

你自己的特殊需求自己convert啊比如return XxUtil.convert(Ipage page)