zoukankan      html  css  js  c++  java
  • 获取MyBatis的insert、update、delete的返回值,insert返回自增主键

    insert的返回值

    insert标签没有resultType属性,返回boolean或者插入成功的数量(行数),执行失败则报错,不会返回

    <insert id="test" parameterType="Dept">
            INSERT INTO dept(dname,db_source) VALUES(#{dname},DATABASE());
    </insert>
    <insert id="test" parameterType="java.util.List">
      INSERT INTO dept(dname,db_source) VALUES
        <foreach collection="list" item="dept" separator=",">
          (#{dept.dname},DATABASE())
        </foreach>
    </insert>

    接口返回值类型可以是如下两种

    public Integer test(Dept dept);
    public boolean test(Dept dept);

    如果是自增型的数据库,可以返回自增后的主键,如下:

    <insert id="test" parameterType="Dept" useGeneratedKeys="true" keyProperty="deptno" keyColumn="deptno">
      INSERT INTO dept(dname,db_source) VALUES(#{dname},DATABASE());
    </insert>
    public Object test(Dept dept) {
        Object o= dao.test(dept);
        System.out.println("dept.getDeptno(): "+dept.getDeptno());//此处会输出插入后的主键
        return o;
    }

    update的返回值

    update标签没有resultType属性,返回boolean或者符合执行条件的数量(行数),执行失败则报错,不会返回

    <update id="test" parameterType="Dept">
        update dept set db_source='123' where dname=#{dname};
    </update>

    接口返回值类型可以是如下两种

    public Integer test(Dept dept);
    public boolean test(Dept dept);

    delete的返回值

    delete标签没有resultType属性,返回boolean或者符合执行条件的数量(行数),执行失败则报错,不会返回

    <delete id="test" parameterType="Dept">
        delete from dept where dname=#{dname};
    </update>

    接口返回值类型可以是如下两种

    public Integer test(Dept dept);
    public boolean test(Dept dept);
  • 相关阅读:
    黄金现货平台
    现货黄金交易中的黑平台
    删除WIN7系统的共享文件
    delphi 通过控件的handle取得控件
    delphi 句柄
    Delphi EVariantTypeCastError错误的解决方法
    【HTML5】Canvas 实现放大镜效果
    使用CSS3制作导航条和毛玻璃效果
    js原生创建模拟事件和自定义事件的方法
    基于react-native实现的博客园手机客户端强势升级
  • 原文地址:https://www.cnblogs.com/javasl/p/13628082.html
Copyright © 2011-2022 走看看