1.抽取之前的UserMapper.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.hao.mapper.UserMapper">
   <select id="findByCondition" parameterType="user" resultType="user">
       select * from user
       <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>
    <select id="findByIds" parameterType="list" resultType="user">
        select * from user
        <where>
            <foreach collection="list" open="id in(" close=")" item="id" separator=",">
                #{id}
            </foreach>
        </where>
    </select>
</mapper>

2.抽取之后的UserMapper.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.hao.mapper.UserMapper">
<!--    sql语句的抽取-->
    <sql id="selectUser">select * from user</sql>
   <select id="findByCondition" parameterType="user" resultType="user">
       <include refid="selectUser"></include>
       <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>
    <select id="findByIds" parameterType="list" resultType="user">
        <include refid="selectUser"></include>
        <where>
            <foreach collection="list" open="id in(" close=")" item="id" separator=",">
                #{id}
            </foreach>
        </where>
    </select>
</mapper>

refid:引用

posted on 2020-11-28 15:06  凸凸大军的一员  阅读(185)  评论(0)    收藏  举报