打个比方,我要获取插入数据的自增Id,首先我需要插入数据吧?
一般用Map insertMap进行插入对吧。
插入完成之后,在插入方法下面,使用
insertMap.get(“想要过去的值名称”)
就可以获取到插入数据的对应的值了。
这个是啥意思啊
在MyBatis中,执行insert操作后,可以通过以下方式获取自动生成的ID:
1.编写Dao接口/Mapper层 使用Map做参数
//Dao接口/Mapper层 使用Map传参
int addUser2(Map<String,Object> map);
2.编写Mapper.xml中的sql语句
<!-- 传递map的key-->
<insert id="addUser2" parameterType="map">
insert into firend_mq.users (id,username,password) value (#{userid},#{name},#{pwd})
</insert>
3.编写测试类
//使用map传参添加插入
@Test
public void addUser2(){
SqlSession sqlSession = Mybatisutil.getSqlSession();
UserDao mapper = sqlSession.getMapper(UserDao.class);
Map<String, Object> map = new HashMap<String, Object>();
map.put("userid",4);
map.put("name","好人");
map.put("pwd",1111111);
mapper.addUser2(map);
sqlSession.commit();
sqlSession.close();
}
使用Map传参也可以批量插入数据
MyBatis 批量插入/修改/删除数据(MySql)
可以参考下这个 http://t.csdn.cn/aqdOx