欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

mybatis-plus条件构造器 (QueryWrapper,LambdaQueryWrapper 比较)

程序员文章站 2022-03-26 16:40:41
1 QueryWrapper使用方式 QueryWrapper wrapper = new QueryWrapper() .eq(StringUtils.isNotBlank(user.getNickName()), ***"nick"***, user.getNickName()) .eq(user.getId() != null, **"id"**, user.getId()...

1 QueryWrapper使用方式

 QueryWrapper<User> wrapper = new QueryWrapper<User>()
                .eq(StringUtils.isNotBlank(user.getNickName()), "nick", user.getNickName())
                .eq(user.getId() != null,"id", user.getId());
        List<User> userList = userDao.selectList(wrapper); 

2 LambdaQueryWrapper 使用方式

 LambdaQueryWrapper<User> wrapper = new LambdaQueryWrapper<User>()
                .eq(StringUtils.isNotBlank(user.getNickName()), User::getNickName, user.getNickName())
                .eq(user.getId() != null, User::getId, user.getId());
        List<User> userList = userDao.selectList(wrapper); 

3 使用区别

QueryWrapper 的列名匹配使用的是 “数据库中的字段名(一般是下划线规则)”
LambdaQueryWrapper 的列名匹配使用的是“Lambda的语法,偏向于对象”

4 LambdaQueryWrapper的优势

不同写“列名”,而是使用纯java的方式,避免了拼写错误(LambdaQueryWrapper的写法如果有错,则在编译期就会报错,而QueryWrapper需要运行的时候调用该方法才会报错)

链接:mybatis-plus 官网教程

本文地址:https://blog.csdn.net/Draymond_feng/article/details/107896668

相关标签: mybatis 工具