愛在花開的季節 发表于 2024-8-5 10:19:29

Mybatis-Plus的Db工具类

在MyBatis-Plus里,Db是一个更方便的工具类,可以直接举行增编削查操作,不必定义Mapper。这个Db常常用于快速开辟中,它底层照旧调用了BaseMapper的相关方法。常见的一些使用Db举行的数据库操作的方法有:
查询(SELECT):

Db.query():创建查询器。
Db.lambdaQuery():创建Lambda表达式的查询器。
Db.getById():根据ID查询一条记录。
Db.list():查询全部记录。
Db.page():分页查询。
插入(INSERT):

Db.save():保存一条记录(插入或更新,根据主键策略)。
Db.saveBatch():批量保存。
更新(UPDATE):

Db.update():更新记录。
Db.lambdaUpdate():创建Lambda表达式的更新器。
删除(DELETE):

Db.remove():删除记录。
Db.lambdaRemove():创建Lambda表达式的删除器。
你已经提到的代码:
User user = Db.lambdaQuery(User.class).eq(User::getOpenid, openid).one();
这个操作是使用Lambda查询构造器根据openid字段去查找一个用户。分析这行代码:
Db.lambdaQuery(User.class):创建一个与User实体相关的Lambda查询构造器。
.eq(User::getOpenid, openid):在查询条件中添加了一个即是(equal)的条件,即找到openid字段即是指定openid值的记录。
.one():实行查询,并返回查询效果的第一条记录。
注意one()是渴望查询效果只有一条记录,如果查询效果为空或超过一条记录,它就不是最佳的选择。
其他常用操作例如:
// 插入一条新的记录

User newUser = new User();
newUser.setName("New User");
newUser.setEmail("newuser@example.com");
Db.save(newUser); // 更新记录

boolean updated = Db.lambdaUpdate(User.class)
                  .eq(User::getId, userId)
                  .set(User::getName, "Updated Name")
                  .update(); / 删除记录

boolean removed = Db.lambdaRemove(User.class)
                  .eq(User::getId, userId)
                  .remove(); 前提是你必要导入MyBatis-Plus的Db工具类:
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
并且确保你项目依靠了正确版本的MyBatis-Plus。这些是简化版的操作方法,实际使用时可能还必要关注事务管理、非常处置惩罚等方面。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: Mybatis-Plus的Db工具类