假设,我们的实体类 或 数据库中的表 字段或参数过多,应当考虑使用Map。好处如下:
-
Map传递参数,直接在SQL中取出key即可 【parameterType=“map”】
-
对象传递参数,直接在SQL中取对象的属性即可 【parameterType=“Object”】
-
只有一个基本数据类型的情况下,可以直接在SQL中取到 【parameterType=“基本数据类型”】
可省略不写
一个方法有多个参数的情况下,使用Map集合或注解。
Mapper接口
//万能的Map int addUser2(Mapmap);
Mapper.xml
insert into mybatis.user (id, name, password) values (#{userId}, #{name}, #{password});
Test.java
@Test
public void addUser2() {
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
Map map = new HashMap();
map.put("userId",4);
map.put("name", "孤南");
map.put("password", "123456789");
int i = mapper.addUser2(map);
if (i>0) {
System.out.println("添加用户成功");
}
//提交事务
sqlSession.commit();
//关闭SqlSession对象
sqlSession.close();
}



