码迷,mamicode.com
首页 > 其他好文 > 详细

[Mybatis]Mybatis常用操作

时间:2020-01-21 10:45:27      阅读:61      评论:0      收藏:0      [点我收藏+]

标签:list   错误   info   test   collect   generate   _id   框架   操作   

Mybatis是目前国内比较流行的ORM框架,特点是可以写灵活的SQL语句,非常适合中小企业的面向数据库开发。
本文总结自己开发过程中常用的Mybatis操作。

一、插入操作

  • 主键自增插入单条

    <insert id="insert" parameterType="UserInfoDO" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
            insert into user_info
            (
            `user_name`,
            `hashed_password`,
            `phone_number`
            )
            values
            (
            #{userName},
            #{hashedPassword},
            #{phoneNumber}
            )
        </insert>
    <insert id="insert" parameterType="UserInfoDO">
            <!-- mysql数据库order="AFTER",oracle数据库order="BEFORE"-->
            <selectKey keyColumn="id" keyProperty="id" order="AFTER" resultType="java.lang.Integer">
                SELECT LAST_INSERT_ID()
            </selectKey>
            insert into user_info
            (
            `id`,
            `user_name`,
            `hashed_password`,
            `phone_number`
            )
            values
            (
            #{id},
            #{userName},
            #{hashedPassword},
            #{phoneNumber}
            )
        </insert>
  • 主键自增批量插入

        <insert id="insertList" parameterType="UserInfoDO" useGeneratedKeys="true" keyProperty="id">
            insert into user_info
            (
            `user_name`,
            `hashed_password`,
            `phone_number`
            )
            values
            <foreach collection="list" item="userInfo" separator=",">
                (
                #{userInfo.userName},
                #{userInfo.hashedPassword},
                #{userInfo.phoneNumber}
                )
            </foreach>
        </insert>

二、更新操作

    <update id="updateUser" parameterType="UserInfoDO" keyProperty="id">
        update user_info
        <set>
            <if test="userName != null">user_name = #{userName},</if>
            <if test="hashedPassword != null">hashed_password = #{hashedPassword},</if>
            <if test="phoneNumber != null">phone_number = #{phoneNumber},</if>
        </set>
        <!--当所有if都失效的时候也不会报sql语法错误-->
        id = #{id}
        where id = #{id}
    </update>

[Mybatis]Mybatis常用操作

标签:list   错误   info   test   collect   generate   _id   框架   操作   

原文地址:https://www.cnblogs.com/zhengxl5566/p/12220848.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!