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);
  • 相关阅读:
    ES6 常用总结——第一章(简介、let、const)
    那些说自己逻辑好的,过来切磋下啊
    纯css3的上下左右提示框几种方法
    遮罩的几种写法
    送给HTML的初学者——H5的基本结构和标签
    H5柱状图2D小插件
    小白学习H5从入门到放弃
    layui学习笔记
    windows系统安装vue及其配置
    友情链接
  • 原文地址:https://www.cnblogs.com/javasl/p/13628082.html
Copyright © 2011-2022 走看看