在代码中有两步操作,且是事务操作:
1.保存数据库
2.获取主键id关联到另一张表里。
@Transactional(rollbackFor = Exception.class) public void save(){ Person person = new Person(); person.setName("test"); personDao.insert(person); PersonRelation personRelation = new PersonRelation(); personRelation.setPerson(person.getId()); personRelation.setRelation("test1"); personRelationDao.insert(personRelation); }
在mybaits中配置 useGeneratedKeys="true" ,主键是自动生成,那么在personDao.insert(person);这一步后,Mybatis会自动生成主键并设置到person里面,所以在同一个事务中,可以直接通过person.getId获取到主键,而不需要额外查询一次