MyBatis框架

5.3 trim 

  • Trim 可以在条件判断完的SQL语句前后 添加或者去掉指定的字符

prefix: 添加前缀

prefixOverrides: 去掉前缀

suffix: 添加后缀

suffixOverrides: 去掉后缀

<select id="getEmpsByConditionTrim" resultType="com.atguigu.mybatis.beans.Employee">

select id , last_name ,email  , gender  

from tbl_employee

<trim prefix="where"  suffixOverrides="and">

<if test="id!=null">

 id = #{id} and

</if>

<if test="lastName!=null && lastName!=""">

 last_name = #{lastName} and

</if>

<if test="email!=null and email.trim()!=''">

 email = #{email} and

</if>

<if test=""m".equals(gender) or "f".equals(gender)">

gender = #{gender}

</if>

</trim>

</select>

5.4 set

  • set 主要是用于解决修改操作中SQL语句中可能多出逗号的问题

<update id="updateEmpByConditionSet">

update  tbl_employee  

<set>

<if test="lastName!=null && lastName!=""">

 last_name = #{lastName},

</if>

<if test="email!=null and email.trim()!=''">

 email = #{email} ,

</if>

<if test=""m".equals(gender) or "f".equals(gender)">

gender = #{gender}

</if>

</set>

 where id =#{id}

</update>