• mybatis 操作总结


    1.<Select> 标签也可以实现插入语句

    使用 Select 标签,实际执行的是Insert 插入是可行的,相对应的不能返回自增id

     <select id="insertTradingAnnouncement">
            insert into t_trading_announcement(trading_account_id,content,visible_status,delete_status,read_number)
            values(#{param.tradingAccountId},#{param.content},1,1,0)
       </select>

    2.如何批量插入数据?

    <insert id="insertPicture">
        insert into t_comment_picture(url,comment_id) values
        <foreach collection="param.urls" item="url"  separator=",">
            (#{url},#{param.id})
        </foreach>
    </insert>

    将需要插入的数据使用<foreach> ,将数据集合遍历插入

    <foreach> 标签成员属性:

    1. collection 是集合,需要被foreach 的对象
    2. separator  元素之间的分隔符,例如 separator = ","
    3. item 集合迭代的别名
    4. open 一般和 close 一起使用,如 open = "(" , close = ")"
    5. close 
    6. index 在list 中表示的序号,在 map 中,表示元素的 key

    3.mybatis 与 mysql 在插入,自增主键如何获取?

     <insert id="commentSubject" useGeneratedKeys="true" keyProperty="id">
            insert into t_comment(from_user_id,subject_id,content,comment_status)
            values(#{param.fromUserId},#{param.subjectId},#{param.content},1)
        </insert>

    在<Insert> 标签中加入 useGeneratedKeys = true  与 keyProperty = "被映射的属性",将返回的id 映射到实体 ,执行  commenrtSubject 的结果返回值还是影响的行数,返回的id 需要在实体中获取

    public ResponseInfo<?> commentSubject(CommentParam param) {
            commentDao.commentSubject(param);
           System.out.println(param.getId());
         return ResponseInfo.ok(CommentSubCode.INSERT_COMMENT_SUCCESS);
    }

     4. sql 语句中的比较符号

    <   &lt;

    <=   &lt;=

    >  &gt;

    >=   &gt;=

  • 相关阅读:
    BAM部署失败 未能加载”AdomdClient”或它的某一个依赖项。系统找不到指定的文件
    BizTalk Server 事务机制
    TSQL 访问远程数据库并对其数据表进行操作
    BAM门户聚合 – Pivot Table不显示数据
    Find max or min
    SetProperties
    Define
    Form derives from Form
    MWArrayComponent
    JAVA JDK
  • 原文地址:https://www.cnblogs.com/bytecodebuffer/p/13737859.html
Copyright © 2020-2023  润新知