MyBatis(七) 解决resultMap只返回一条结果的问题

问题描述

     在使用resultMap进行两表的关联关系映射的时候,本应返回list类型的数据,但是却只返回了一条数据,出现了后面的数据覆盖前面的数据的现象。

表直接的关联关系


sql语句


      这样写后,就只能返回一条数据,出现错误的原因是:resultMap中如果不定义类似主键之类的能够区分每一条结果集的字段的话,会引起后面一条数据覆盖前面一条数据的现象。

然后意识到:由于master_id是master表的主键、mastergroup表的外键,在实体类中写表之间的关联关系时,可以不写master_id属性,因为在mastergroup属性中就有master_id属性,所以在上面的sql语句中,应该将<id>写在association中。正确写法如下:


然后就可以返回多条数据了!



猜你喜欢

转载自blog.csdn.net/qq_41541619/article/details/80556988