mybites查询 对象包含对象List的方法 一对多方法sql的写法

mybites查询 对象包含对象List的方法 一对多方法sql的写法_第1张图片

Dao.xml中要定义这两个resultMap ,当然这property就是对象里的字段,这column就是表中的字段


       
       
       
       
       
       
       
       
       
       
        auditRecordPageList" resultMap="auditRecordPageList" />
   

    auditRecordPageList" type="com.s*****.l*******.c*****.bo.page.AuditRecordLog">
       
       
       
       
       
       
       
       
       
   

然后查询的时候该怎么查询就怎么查询,结果会自动封装滴此处的resultMap就是我们上边定义的resultMap 注意此处是resultMap,不是resultType,下边例子中t_landingpage_pagefile 是一, t_landingpage_audit_log 是多当然要注意一对多的分页写法,没有分页更好写,此处一对多分页用的子查询,我们要对一对多当中的一进行分页,如SQL中同色部分,当然如果有查询条件属于一对多当中多的那个表我也用了一个子查询解决的如下例中同色部分

如:

    

此处顺便说一下上例中的,这个只是为了便于查看对查询列表条件进行的公共部分提取,这样查询数量的selectCount,和查询实体的两个SQL公用一套查询条件,这样修改的时候只需要改一个地方就行啦:图中同色部分是不同角色的查询条件,属于权限管理

提取部分如下



AND (actual_user LIKE CONCAT('%','${userDetails.email}','%')
or creator LIKE CONCAT('%','${userDetails.email}','%'))
AND bu_id = #{userDetails.buId}


AND bu_id = #{userDetails.buId}


and  page_id = #{pageId}


and page_name LIKE CONCAT('%','${pageName}','%')


and actual_user LIKE CONCAT('%','${actualUser}','%')



=#{createTime.start}]]>






你可能感兴趣的:(mvc,数据库)