spring-boot里面mybatis plus2.0如果实现条件删除和条件修改呢

普通修改

public void update(WebUser webUser){
        webUser.setUpdated(new Date());
        webUsersXgMapper.updateById(webUser);
    }

如果我想实现根据某两个字段来修改这条数据应该怎么修改

如果使用sql语句大概就是这样写,但是我想使用mybatis plus来实现
请问,应该如何实现呢

update tb_cart set num = #{num}, updated = #{updated}
        where item_id = #{itemId} and user_id = #{userId}

3个回答

//实体类的条件更新
public void update(WebUser webUser){
webUser.setUpdated(new Date());
webUsersXgMapper.update(webUser,
new EntityWrapper()
.eq("item_id","123")
.eq("user_id",345));
)
}

方法:根据条件查询出所有的,然后设置字段,在更具ID修改。

List<WebUser> list = this.webUsersXgMapper.selectList(
                new QueryWrapper<WebUser>()
                .eq("item_id", "123")
                .eq("user_id", "345"));
        list.forEach(l -> {
            l.setNum(2);
            l.setUpdated(new Date());
            this.webUsersXgMapper.updateById(l)
        });

方法2: 条件修改

webUser.setUpdated(new Date());
        webUser.setNum(2);
        this.webUsersXgMapper.update(webUser,new QueryWrapper<WebUser>()
                .eq("item_id", "123")
                .eq("user_id", "345"));
it_zhangwei
路漫漫兮其修远兮 回复无感五: 对的,刚看了下,2x版本没有这些东西,我用的mybatis-plus-boot-start的3x版本,结合springboot,
一年多之前 回复
q2617426
无感五 请问大佬这个QueryWrapper<WebUser>()是怎么来的,我使用的是2.0版本,这个属性是3.0版本的吗??
一年多之前 回复

可以尝试重写他的update方法

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐