Mybatis的WHERE和IF动态

Posted 虚极静笃

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mybatis的WHERE和IF动态相关的知识,希望对你有一定的参考价值。

mapper.xml:

    <!--查询套餐产品 -->
    <select id="queryComboProducts" resultType="com.runmin.bajie.entity.ProductCombo">
        select id,name,price,specification,origin_price,image from product_combo  
          <where>
            <if test="type!=null">
                and type = ${type}
            </if>
        </where>
    </select>

dao:

    /**
     * 查询组合套餐
     * 
     * @return
     */
    List<ProductCombo> queryComboProducts(ProductCombo type);

也就是说如果直接传Integer type是不行的,必须放在对象里面。

以上是关于Mybatis的WHERE和IF动态的主要内容,如果未能解决你的问题,请参考以下文章

Mybatis超强大的动态SQL大全

mybatis学习日志二

MyBatis高级特性

mybatis 动态SQL .2

mybatis 详解------动态SQL

MYBATIS05_ifwherechoosewhentrimsetforEach标签sql片段