查看原文
其他

今日代码大赏 | MyBatis-Plus 优雅查询

编程导航-松柏 程序员鱼皮 2024-03-23

对于 Java 开发者来说,MyBatis-Plus 可以说是再熟悉不过的持久层框架了。

其中 Wrapper 给我们提供了十分方便和灵活的方式来构造数据库查询条件。

我们经常写出类似如下的代码:

QueryWrapper<Post> postQueryWrapper = new QueryWrapper<>();
postQueryWrapper.eq("userId", userId);
postQueryWrapper.like("content", searchText);
List<Post> postList = postService.list(postQueryWrapper);

但其实它并不优雅!

因为在拼装查询条件时,我们使用了类似 “userId”,“content” 等魔法值。

那我们该怎么改进呢?其实 MyBatis-Plus 为我们提供了另一种写法。

示例代码如下:

List<Post> postList = postService.lambdaQuery()
        .eq(Post::getUserId, userId)
        .like(Post::getContent, searchText)
        .list();

大家觉得哪种写法更好呢?欢迎在评论区留下自己的看法。

完整代码片段来源于代码小抄,欢迎点击进入小程序阅读!

在线访问:https://www.codecopy.cn/post/s8gdd5

更多优质代码欢迎进入小程序查看!

往期推荐

今日代码大赏 | 集合高阶操作

今日代码大赏 | 饿汉式单例模式

今日代码大赏 | 快速排序

今日代码大赏 | 阶乘

今日代码大赏 | 全局异常处理

继续滑动看下一个
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存