MyBatis获取插入数据主键

ibatis获取主键方式

在ibatis时代我们通过 SELECT LAST_INSERT_ID()方式获取主键
DAO接口内方法声明

//返回的值为新插入数据的ID
Long insert(Student student);

Mapper文件配置

<insert id="insert" parameterClass="Student">
        insert into student
          (name, class, grade)
        values
          (#name#, #class#, #grade#);
        <selectKey  keyProperty="id" resultClass="java.lang.Long">
            SELECT LAST_INSERT_ID()
        </selectKey>
    </insert>
Student student = new Student("张三","1","3")//初始化student的name,class,grade
Long id = studentDao.insert(student);   //获取插入ID

Mybatis 获取主键方式

DAO接口方法声明

//这里返回值仅仅表示受影响的数据条数,如果插入成功返回1,如果插入失败返回0
int insert(Student student);

Mapper文件配置

<insert id="insert" parameterType="Student">
        insert into student
          (name, class, grade)
        values
          (#{name}, #{class}, #{grade});
</insert>
Student student = new Student("张三","1","3")//初始化student的name,class,grade
int count = studentDao.insert(student);   //获取插入ID
if(count == 1){
  Long id = student.getId();  //得到主键