在Mybatis中传递参数除了可以使用实体类对象和基本数据类型外还可以使用map进行参数的传递,而且更为便捷。
mapper的代码
public interface UserMapper {
List<User> getUserList();
int addUser(User user);
int updateUser(User user);
int addUser2(Map<String,Object> map);
}
mapper的xml文件
<insert id="addUser2" parameterType="Map">
insert into mybatis.user(id,name,pwd) values (#{userid},#{username},#{userpwd})
</insert>
#{}中可以填任意,只需要在创建map的时候与之对应即可。如果是实体类对象的话就只能填属性名。
测试代码
public void testAddUser2(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
Map<String,Object> map = new HashMap<>();
map.put("userid",5);
map.put("username","yf5");
map.put("userpwd","123443");
mapper.addUser2(map);
sqlSession.commit();
sqlSession.close();
}