2.7、mybatis中使用Map传递参数
-
接口:
int UpdateUserPwd(Map<String,Object> map); -
Mapper.xml配置:
<!--修改密码--> <update id="UpdateUserPwd" parameterType="map"> update mybatis.user set pwd=#{password} where id=#{id}; </update> -
测试:
@Test public void UpdateUserPwd(){ SqlSession sqlSession = MybatisUtils.getSqlSession(); UserMapper mapper = sqlSession.getMapper(UserMapper.class); HashMap<String, Object> map = new HashMap<String, Object>(); map.put("password","qweasd"); map.put("id",6); int i = mapper.UpdateUserPwd(map); if(i>0){ System.out.println("修改成功"); sqlSession.commit(); } sqlSession.close(); }**优点:**如果一个表中的字段非常多而需要的字段只有少数时,new一个实体对象显然很麻烦,需要对所有的字段都进行一次赋值。使用map传值可以更方便的实现需要进行的操作。如:修改用户密码时,只需要传入id和密码即可,而无需new一个用户对象。

在MyBatis中,使用Map传递参数可以简化操作,尤其在只需要修改少量字段时,避免了创建完整实体对象的繁琐。例如,更新用户密码时,仅需传入id和密码两个关键字段即可。这种方式提高了代码的灵活性和效率。
2444

被折叠的 条评论
为什么被折叠?



