MyBatis 特殊标签使用例子

foreach、if 、where

  <insert id="batchInsert" parameterType="list">
    insert into mmall_order_item (id, order_no,user_id, product_id,
    product_name, product_image, current_unit_price,
    quantity, total_price, create_time,
    update_time)
    values
    <foreach collection="orderItemList" index="index" item="item" separator=",">
      (
      #{item.id},#{item.orderNo},#{item.userId},#{item.productId},#{item.productName},
    #{item.productImage},#{item.currentUnitPrice},#{item.quantity},#{item.totalPrice},now(),now() )
</foreach> </insert>
 <update id="updateByPrimaryKeySelective" parameterType="com.pojo.OrderItem" >
    update order_item
    <set >
      <if test="userId != null" >
        user_id = #{userId,jdbcType=INTEGER},
      </if>
      <if test="orderNo != null" >
        order_no = #{orderNo,jdbcType=BIGINT},
      </if>
      <if test="updateTime != null" >
        now(),
      </if>
    </set>
    where id = #{id,jdbcType=INTEGER}
  </update>
 <insert id="insertSelective" parameterType="com.mmall.pojo.PayInfo" >
    insert into mmall_pay_info
    <trim prefix="(" suffix=")" suffixOverrides="," >
      <if test="id != null" >
        id,
      </if>
      <if test="userId != null" >
        user_id,
      </if>
      <if test="updateTime != null" >
        update_time,
      </if>
    </trim>
    <trim prefix="values (" suffix=")" suffixOverrides="," >
      <if test="id != null" >
        #{id,jdbcType=INTEGER},
      </if>
      <if test="userId != null" >
        #{userId,jdbcType=INTEGER},
      </if>
      <if test="updateTime != null" >
        now(),
      </if>
    </trim>
  </insert>
<select id="selectByNameAndProductId" resultMap="BaseResultMap" parameterType="map">
  select
    <include refid="Base_Column_List"/>
    FROM
    mmall_product
    <where>
      <if test="productName != null">
        and name like #{productName}
      </if>
      <if test="productId != null">
        and id = #{productId}
      </if>
    </where>
  </select>
原文地址:https://www.cnblogs.com/SacredOdysseyHD/p/9095269.html