Mybatis获取自增主键
获取当前添加功能的主键时,需要在在映射文件的标签中填入两个属性:
即:
*useGeneratedKeys:*表示当前添加功能使用自增的主键
*keyProperty:*将添加的自增主键为实体类类型的哪一个属性赋值
<!--void insertUser(User user);-->
<insert id="insertUser" useGeneratedKeys="true" keyProperty="id">
insert into t_user values (null,#{username},#{password},#{age},#{gender},#{email})
</insert>
参考完整Demo代码
mapper接口:
public interface SpecialSqlMapper {
//获取自增主键
void insertUser(User user);
}
mapper映射文件:
*useGeneratedKeys:*表示当前添加功能使用自增的主键
*keyProperty:*将添加的自增主键为实体类类型的哪一个属性赋值
<!--void insertUser(User user);-->
<insert id="insertUser" useGeneratedKeys="true" keyProperty="id">
insert into t_user values (null,#{username},#{password},#{age},#{gender},#{email})
</insert>
测试类:
@Test
public void insetUserAndGetId(){
SqlSession sqlSession = SqlSessionUtils.sqlSession();
SpecialSqlMapper mapper = sqlSession.getMapper(SpecialSqlMapper.class);
User user=new User(null,"KangKang","789456",18,"男","666@qq.com");
mapper.insertUser(user);
System.out.println(user);
}
运行结果: