spring boot mybatis plus 判断一个值在数据库是否存在,存在加1,1有了加2
时间: 2024-02-18 13:05:22 浏览: 60
springboot整合mybatis-plus 登录(md5加密)(validation自定义校验器)
您可以使用Mybatis Plus提供的Wrapper对象,结合lambda表达式来实现该功能。具体代码如下:
```
// 假设您要判断的字段名为value,您需要查询的表名为tableName
// 首先构造查询条件
QueryWrapper<Entity> wrapper = new QueryWrapper<>();
wrapper.eq("value", value);
wrapper.eq("tableName", tableName);
// 查询数据库中是否存在符合条件的记录
Entity entity = entityMapper.selectOne(wrapper);
// 如果存在符合条件的记录
if (entity != null) {
// 取出value字段的值
Integer dbValue = entity.getValue();
// 判断该值是否为1
if (dbValue == 1) {
// 如果是1,则将其修改为2
entity.setValue(2);
entityMapper.updateById(entity);
} else {
// 如果不是1,则将其加1
entity.setValue(dbValue + 1);
entityMapper.updateById(entity);
}
} else {
// 如果不存在符合条件的记录,则新增一条记录
Entity newEntity = new Entity();
newEntity.setValue(1);
newEntity.setTableName(tableName);
entityMapper.insert(newEntity);
}
```
请将代码中的Entity替换为您实际的实体类名,entityMapper替换为您实际的Mapper类名。另外,代码中的value和tableName是您传入的参数,也需要替换为实际的参数名。
阅读全文