mybatis执行insert返回主键

1.第一种方式

  • 对应的xxxMapper.xml
<insert id="insertDemoReturnPrimaryKey1"
       parameterType="com.fcmap.ssm.domain.Demo" 
 useGeneratedKeys="true"
       keyProperty="id">
       insert into DEMO (id,name) values  (#{id},#{name});
    </insert>
  • 对应的测试方法
@Test
    public void  testinsertDemoReturnPrimaryKey1() {
        Demo demo1 = new Demo(null, "测试111");
        Integer row =  demoDao.insertDemoReturnPrimaryKey1(demo1);
        System.out.println("影响的行数     " +  row);
        System.out.println(demo1.getId());
    }

2.第二种方式

  • 对应的xxxMapper.xml
 <insert id="insertDemoReturnPrimaryKey2"
       parameterType="com.fcmap.ssm.domain.Demo">
       <selectKey  resultType="java.lang.Integer" order="AFTER"
           keyProperty="id">
           SELECT LAST_INSERT_ID() AS id
       </selectKey>
       insert into DEMO (id,name) values  (#{id},#{name});
    </insert>
  • 对应的测试的方法
 @Test
    public void  testinsertDemoReturnPrimaryKey2() {
        Demo demo1 = new Demo(null, "测试111");
        Integer row =  demoDao.insertDemoReturnPrimaryKey2(demo1);
        System.out.println("影响的行数     " +  row);
        System.out.println(demo1.getId());
    }
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐