mybatis-plus工具类save or update
时间: 2023-08-13 13:07:35 浏览: 341
Mybatis 中的insertOrUpdate操作
5星 · 资源好评率100%
MyBatis-Plus提供了方便的工具类来执行save or update操作。你可以使用`saveOrUpdate`方法来实现。
下面是一个示例代码:
```java
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
public class YourService extends ServiceImpl<YourMapper, YourEntity> {
public boolean saveOrUpdate(YourEntity entity) {
if (entity.getId() != null) {
// 如果实体对象的id不为空,则执行update操作
return updateById(entity);
} else {
// 如果实体对象的id为空,则执行save操作
return save(entity);
}
}
public boolean saveOrUpdateByWrapper(YourEntity entity) {
if (entity.getId() != null) {
// 如果实体对象的id不为空,则执行update操作
return update(entity, new UpdateWrapper<YourEntity>().eq("id", entity.getId()));
} else {
// 如果实体对象的id为空,则执行save操作
return save(entity);
}
}
}
```
上述代码中,`YourEntity`是你的实体类,`YourMapper`是你的Mapper接口。`YourService`继承自`ServiceImpl`,它提供了一些方便的方法来操作数据库。
使用`saveOrUpdate`方法时,如果实体对象的id不为空,则执行update操作;否则执行save操作。
另外,你还可以使用带有`UpdateWrapper`参数的`saveOrUpdateByWrapper`方法,通过设置条件来执行update操作。
这样你就可以使用MyBatis-Plus的工具类来执行save or update操作了。
阅读全文