Mybatis获取自增id
1.测试类
/**
* 保存并返回用户id
*/
@Test
public void test3(){
User user=new User();
user.setUsername("tom1");
user.setPassword("abc");
userMapper.saveBackId(user);
System.out.println(user.getId());
}
2.mapper接口
public void saveBackId(User user);
3.mapper.xml配置
第一种 支持自增的数据库
useGeneratedKeys=“true”
需要返回的自增属性 keyProperty=“id”
<insert id="saveBackId" parameterType="user" useGeneratedKeys="true" keyProperty="id">
insert into user (username,password) values (#{username},#{password})
</insert>
Mybatis官网
https://mybatis.org/mybatis-3/zh/sqlmap-xml.html
第二种写法:不支持自动生成主键
对于不支持自动生成类型的数据库或可能不支持自动生成主键的 JDBC 驱动
<insert id="add" parameterType="com.itheima.pojo.CheckGroup">
<selectKey resultType="java.lang.Integer" order="AFTER" keyProperty="id">
select last_insert_id()
</selectKey>
insert into t_checkgroup(code,name,sex,helpCode,remark,attention)
values
(#{code},#{name},#{sex},#{helpCode},#{remark},#{attention})
</insert>