首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

mybatis association表关联与rowbounds共同使用时的错误及其解决方案

2012-10-10 
mybatis association表关联与rowbounds共同使用时的异常及其解决方案按照mybatis手册中所说的,association

mybatis association表关联与rowbounds共同使用时的异常及其解决方案
按照mybatis手册中所说的,association有两种实现方式,嵌套查询和嵌套结果映射。如手册中所述,select方式会带来N+1次查询的问题,考虑到效率问题的话建议使用嵌套结果映射。但是在结合使用rowbounds进行分页的时候嵌套结果映射会报Mapped Statements with nested result mapping cannot be safely constrained by rowbounds异常。经过测试发现是rowbounds和resultmap-association之间有冲突,鱼与熊掌不可兼得的话,我想最好还是选择放弃rowbounds。毕竟可以在sql语句里面加入变量来实现分页。
解决方案:
新建一个RowBoundCapsule类,将原来的查询参数和limit、offset封装到一起,并采用如下的方式改写mapper文件:


#{o}代表原来的参数。这样就可以把分页的任务交给数据库来完成了。

热点排行