xml + 动态query 
此功能需要1.8.1版本或之后才有
xml + 动态query,可支持多个query参数
动态query 有那些sql组件 
| 组件 | 描述 | 
|---|---|
| queryScript | 整个查询 sql | 
| selectScript | 查询中的 select sql (不包含SELECT 关键字) | 
| fromScript | 查询中的 from sql (不包含FROM 关键字) | 
| whereScript | 查询中的 where sql (不包含WHERE 关键字) | 
| orderByScript | 查询中的 order by sql | 
| groupByScript | 查询中的 group by sql | 
| havingScript | 查询中的 group by having sql | 
如何用 
xml
<!-- 单个参数时,使用这个 -->
<select id="selectCustomSql">
    select ${selectScript} from ${fromScript} <where>${whereScript}</where>
</select>OR
xml
<!-- 指定参数名(@Param("QUERY"))时,使用这个;参数名QUERY可以是其他的名字 -->
<select id="selectCustomSql">
    select ${QUERY.selectScript} from ${QUERY.fromScript} <where>${QUERY.whereScript}</where>
</select>mapper 使用 
java
List<SysRole> selectCustomSql(Query query);
OR
List<SysRole> selectCustomSql(@Param("QUERY") Query query);使用代码 
java
List<SysRole> list = sysRoleMapper.selectCustomSql(Query.create().select(SysRole.class).from(SysRole.class).in(SysRole::getId, 1, 2));