Spring笔记-mybatis映射文件

动态sql语句

在业务较为复杂时候,sql是变化的,就需要进行一些动态sq处理如果对查询数据输入不完整的情况下,会查不到数据
将log4j参数改为debug
Spring笔记-mybatis映射文件
在之前的查询方法中如果查询条件没有在语句中全部覆盖,会出现查询空值的现象
查看日志
Spring笔记-mybatis映射文件
这里就需要引入动态sql语句

动态sql语句

if 动态语句

<!--    sql语句的抽取-->
    <sql id="selectUser">select * from user</sql>
    <select id="findByCondition" parameterType="user" resultType="user">
            <include refid="selectUser"/>
<where>
    <if test="id!=0">
        and id=#{id}
    </if>
<if test="userName!=null">
    and userName=#{userName}
</if>
<if test="passWord!=null">
    and passWord=#{passWord}
</if>
</where>
    </select>

foreach

Spring笔记-mybatis映射文件

简化sql将重复的sql语句进行抽取

<!--    sql语句的抽取-->
    <sql id="selectUser">select * from user</sql>
    <select id="findByCondition" parameterType="user" resultType="user">
            <include refid="selectUser"/>
<where>
    <if test="id!=0">
        and id=#{id}
    </if>
<if test="userName!=null">
    and userName=#{userName}
</if>
<if test="passWord!=null">
    and passWord=#{passWord}
</if>
</where>
    </select>

Spring笔记-mybatis映射文件

上一篇:maven-dependency与dependencyManagement的区别


下一篇:pf4j 官方几个比较又用的扩展