keyProperty 指定生成的主键值设置到 Java 对象的哪个属性中,此处是设置到对象名为 id 的属性
XML复制代码
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybati
s.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.demo.mapper.UserMapper">
<insert id="add">
insert into user(name,age,password) values(#{name},#{age},#{password})
</insert>
<insert id="add2" useGeneratedKeys="true" keyProperty="id">
insert into user(name,age,password) values(#{name},#{age},#{password})
</insert>
</mapper>
创建 add 的测试方法
创建一个 user 对象 ,并设置其属性,再使用 add 方法将其新增到数据库中
java复制代码
@Test
void add() {
User user = new User();
user.setName("maolin");
user.setAge(20);
user.setPassword("123");
int result = userMapper.add(user);
System.out.println("add 方法:" + (result == 1 ? "新增成功" : "新增失败"));
}
执行测试方法
测试方法执行成功
数据库成功新增用户信息
创建 add2 的测试方法
创建一个 user 对象 ,并设置其属性,再使用 add2 方法将其新增到数据库中
java复制代码
@Test
void add2() {
User user = new User();
user.setName("zhangsan");
user.setAge(38);
user.setPassword("123456");
// result 为受影响行数
int result = userMapper.add2(user);
System.out.println("add2 方法:" + (result == 1 ? "新增成功" : "新增失败"));
System.out.println("自增 id 值为:" + user.getId());
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybati
s.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.demo.mapper.UserMapper">
<delete id="delete">
delete from user where id = #{user_id}
</delete>
</mapper>
创建 delete 的测试方法
此处传入参数 id = 9
java复制代码
@Test
void delete() {
int result = userMapper.delete(9);
System.out.println("delete 方法:" + (result == 1 ? "删除成功" : "删除失败"));
}