Mybatis方法实现传递多个值解决

简单的pojo类

public class User {
    private int id;
    private String name;
    private String password;
}

方法一:利用注解实现(推荐

比如说,我们想通过id来修改name
在接口中我们定义方法
void updateNameById(@Param("id")int id,@Param("name")String name);*.xml中进行配置
    <update id="updateNameById" >
        update user set name = #{name} where id = #{id};
    </update>
注:@Param("id") 中字符串"id" 要与 *.xml配置文件中#{id}一致,name同样如此

方法二:利用传递Map来实现

同样我们现在接口中定义方法,注意此处传值用Map
void updateNameByMap(Map map);*.xml文件中进行配置
    <update id="updateNameByMap" parameterType="map">
        update user set name = #{name} where id = #{id};
    </update>

在进行测试时,我们需要创建Map对象
Map<String,Object> map = new HashMap<>();
向map中传值
map.put("name","xw");
map.put("id",1);
调用updateNameByMap(map);传入map的值即可
注:map中键的名字要配置文件中与#{}一致,比如键"name" 与 #{name}一致
原创文章 34 获赞 8 访问量 1170

猜你喜欢

转载自blog.csdn.net/qq_46225886/article/details/105340865