有点时候,我们的业务需要执行了insert语句后再返回主键,这时可以使用主键映射
首先,定义sql,以MySQL为例
1 <insert id="addUser" useGeneratedKeys="true" keyProperty="user_id" parameterType="com.entity.User"> 2 insert into user(name,xes,age)values(‘jack‘,‘男‘,20) 3 </insert>
这里的有两个属性
useGeneratedKeys 表示:是否生成主键
keyProperty 的值对应着com.entity.User 类的 user_id 属性
编写dao
public int addUser(User user);
调用Mapper
UserDao userDao = new UserDao(); int num = userDao.addUser(); System.out.println(num); //这里输出的只是响应的条目数 System.out.println(user.getUser_id()); //直接从实体类中获得,MyBatista会自动将主键ID设置进user类中
user.getUser_id() 获取的就是映射的主键ID值
时间: 2024-10-09 21:26:27