mybatis mapper.xml 基础的增删改查

  1. 新增的几种情景
    1.      <!--单条新增-->
          <insert id="addUser" parameterType="User">
            INSERT INTO `user` (
      	    `userId`,
      	    `username`,
      	    `nickname`,
      	    `password`
            )
              VALUES(
              #{userId},
              #{phone},
              #{nickname},
              #{password}
              )
          </insert>
      
      
        
      <!--新增数据返回主键,这时主键必须是自增主键-->
      
      
      <insert id="addUser" parameterType="User">
          <selectKey keyProperty="id" resultType="long" order="AFTER">
        		SELECT LAST_INSERT_ID()
        	</selectKey>
            INSERT INTO `user` (
      	    `userId`,
      	    `username`,
      	    `nickname`,
      	    `password`
            )
              VALUES
            (
              #{userId},
              #{phone},
              #{nickname},
              #{password}
              )
       </insert>
      
      
      
      <!--新增数据若数据已存在则更新-->
      
      <insert id="addUser" parameterType="User">
            INSERT INTO `user` (
      	    `userId`,
      	    `username`,
      	    `nickname`,
      	    `password`
            )
              VALUES
           (
              #{userId},
              #{phone},
              #{nickname},
              #{password}
              )
      
              ON DUPLICATE KEY UPDATE nickname=#{nickname};
       </insert>
      
      
        <!--批量新增数据-->
       <insert id="insertUserList" parameterType="java.util.List">
          INSERT INTO
          <include refid="table"/>
          (
          `userId`,
          `username`,
          `nickname`,
          `password`
          ) 
          VALUES
          <foreach collection="list" item="item" index="index" separator=",">
              (
              #{item.userId},
              #{item.username},
              #{item.nickname},
              #{item.password}
              )
          </foreach>
      
        </insert>
      
      
      
      
      
      
      
      
      
      
      

       

  2. 删除
    1.     <!-- 删除 -->
         <delete id="deleteUserByuserId" parameterType="java.lang.String">
              DELETE FROM
              <include refid="table"/>
              where
              userId=#{userId}
          </delete>

       

  3. 修改
    1.       <!--修改信息-->
          <update id="updateUser" parameterType="User">
              UPDATE
              <include refid="table"/>
              <set>
                  <if test="nickname != null and nickname  !=''">
                      nickname=#{nickname},
                  </if>
                  <if test="email != null and email  !=''">
                      email=#{email},
                  </if>
                  <if test="phone != null and phone  !=''">
                      phone=#{phone}
                  </if>
              </set>
              WHERE UserId= #{userId}
          </update>
      
      
      
       

       

  4. 查询
    1. <select id="getUser" parameterType="User" resultType="User">
          SELECT
          <include refid="Base_Column_List"/>
          FROM
          <include refid="table"/>
          <trim prefix="where" prefixOverrides="and">
              <if test="userId != null and userId != ''">
                  and userId=#{userId}
              </if>
              <if test="password != null and password != ''">
                  and password=#{password}
              </if>
          </trim>
      
      </select>

       

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值