MyBatis动态SQL使用,传入参数Map中的Key判断

当使用Map做为参数时,可以用_parameter.containsKey(变量名)来判断map中是否包含有些变量:

  

<select id="selectRule" parameterType="Map" resultType="com.ourangel.weixin.domain.Rule">  
    SELECT ruleId,msgType,event,respId,reqValue,firstRespId,createDate,yn  
    FROM oal_tb_rule  
    WHERE yn = 1  
    <if test="_parameter.containsKey('msgType')">  
        AND msgType = #{msgType,jdbcType=VARCHAR})  
    </if>  
    <if test="_parameter.containsKey('event')">  
        AND event = #{event,jdbcType=VARCHAR})  
    </if>  
</select>  
原文地址:https://www.cnblogs.com/huaxingtianxia/p/6473852.html