今天遇到一个问题用pagepelper时候明明只有八条数据返回前端16条,因为我是左关联查出所有数据做映射的

附上 解决问大佬https://blog.csdn.net/m0_47428652/article/details/107759401

    <select id="lineSeat" resultMap="LineSeatGrade">
        SELECT l.id, l.`name`, c.id as c_id, c.`code` as c_code
        FROM line l
                 LEFT JOIN sys_tenant s ON s.id = l.sys_tenant_id
                 LEFT JOIN sys_currency c ON s.sys_currency_id = c.id
        WHERE l.sys_tenant_id = #{sysTenantId}
    </select>

    <select id="getSeat" resultType="com.zhsp.entity.dto.LineSeatDto">
        select id,name from line_ticket_grade where line_id=#{id}
    </select>

    <resultMap id="LineSeatGrade" type="com.zhsp.entity.dto.LineSeatGradeDto">
        <id column="id" jdbcType="INTEGER" property="id"/>
        <result column="sys_tenant_id" jdbcType="INTEGER" property="sysTenantId"/>
        <result column="name" jdbcType="VARCHAR" property="name"/>
        <result column="c_id" jdbcType="VARCHAR" property="currencyId"/>
        <result column="c_code" jdbcType="VARCHAR" property="currencyCode"/>
        <collection property="seatDtoList" column="id" javaType="java.util.List"
                    ofType="com.zhsp.entity.dto.LineSeatDto" select="getSeat">
            <!--<id column="t_id" jdbcType="INTEGER" property="id"/>
            <id column="t_name" jdbcType="INTEGER" property="name"/>-->
        </collection>
    </resultMap>
#参数说明 @parm property 是一对多里面的多的属性 javaType是数据类型  ofType是一对多多那个属性
 column是该表关联子表的数据库字段   where line_id=#{id}这个id时该表关联数据库字段的实体类的字段

column是该表关联子表的数据库字段 where line_id=#{id}这个id时该表关联数据库字段的实体类的字段

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐