MyBatis 使用 Map 传递参数
MyBatis 使用 Map 传递参数
MyBatis 中向 sql 传参时,如果需要多个参数,除了传递对象以使用其属性值,也可以使用 Map 传递多个参数,示例如下:
接口方法:
int addUser2(Map<String,Object> map);
接口方法对应的Mapper:
<insert id="addUser2" parameterType="map">
insert into user(id, name) values (#{id}, #{name});
</insert>
测试方法:
@Test
public void addUser2() {
//MybatisUtils中封装了获取SqlSession的方法
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("id",7);
map.put("name","Henry");
int res = mapper.addUser2(map);
if(res == 1) {
System.out.println("插入成功!");
}
sqlSession.commit();
sqlSession.close();
}
参考资料:
[1] 狂神说Java.Mybatis最新完整教程IDEA版通俗易懂.bilibili,2019-10-02:https://www.bilibili.com/video/BV1NE411Q7Nx?p=5&spm_id_from=pageDriver