当前位置: 首页 > news >正文

后端常用的mybatis-plus方法以及配合querywapper使用

目录

一、插入数据

        save方法

二、删除操作

        removeById方法

三、更新操作

        updateById方法

四、查询操作

       selectById方法

五、条件构造器QueryWrapper的更多用法

1.比较操作符

2.逻辑操作符

3.模糊查询

4.空值判断

一、插入数据

        save方法

save(T entity):向数据库中插入一条记录。

代码示例:

Student student = new Student();
student.setName("张三");
student.setAge(30);
studentMapper.save(student);

        配合QueryWrapper查询后插入(先查询是否存在再插入):

QueryWrapper<Student> queryWrapper = new QueryWrapper<>();queryWrapper.eq("name", "张三");Student existingStudent = studentMapper.selectOne(queryWrapper);if (existingStudent == null) {Student student = new Student();student.setName("张三");student.setAge(30);studentMapper.save(student);}

二、删除操作

        removeById方法

根据主键ID删除一条记录。

studentMapper.removeById(1L);

        remove方法配合QueryWrapper:根据自定义条件删除记录。

QueryWrapper<Student> queryWrapper = new QueryWrapper<>();
queryWrapper.gt("age", 30);
studentMapper.remove(queryWrapper);

三、更新操作

        updateById方法

根据主键 ID 更新一条记录。

Student student = new Student();
student.setId(1L);
student.setAge(30);
studentMapper.updateById(student);

        update方法配合QueryWrapper(批量更新):根据自定义条件更新符合条件的记录。

Student student = new Student();
student.setAge(30);
QueryWrapper<Student> queryWrapper = new QueryWrapper<>();
queryWrapper.like("name", "张三");
studentMapper.update(student, queryWrapper);

四、查询操作

       selectById方法

根据主键 ID 查询一条记录。

Student student = studentMapper.selectById(1L);

        selectOne方法配合QueryWrapper查询单条记录

QueryWrapper<Student> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("name", "张三");
Student student = studentMapper.selectOne(queryWrapper);

        selectList方法配合QueryWrapper查询多条记录

QueryWrapper<Student> queryWrapper = new QueryWrapper<>();
queryWrapper.lt("age", 30);
List<Student> studentList = studentMapper.selectList(queryWrapper);

        selectPage方法配合QueryWrapper进行分页查询

QueryWrapper<Student> queryWrapper = new QueryWrapper<>();
queryWrapper.isNotNull("age");
Page<Student> page = new Page<>(1, 10);
IPage<Student> studentIPage = studentMapper.selectPage(page, queryWrapper);
ListStudent> studentList = studentIPage.getRecords();
long total = studentIPage.getTotal();

五、条件构造器QueryWrapper的更多用法

1.比较操作符

        eq:等于。

        ne:不等于。

        gt:大于。

        ge:大于等于。

        lt:小于。

        le:小于等于。

2.逻辑操作符

        and:连接多个条件(默认是and连接)。

        or:用于or连接条件。

QueryWrapper<Student> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("name", "张三").or().eq("name", "李四");
List<Student> studentList = studentMapper.selectList(queryWrapper);

3.模糊查询

        like:左右模糊查询。

        notLike:左右不模糊查询。

        likeLeft:左模糊查询。

        likeRight:右模糊查询。

4.空值判断

        isNull:判断字段为null。

        isNotNull:判断字段不为null。

getone与last("limit 1")结合用

http://www.lryc.cn/news/444445.html

相关文章:

  • 【设计模式】万字详解:深入掌握五大基础行为模式
  • C++ 9.19
  • [Unity Demo]从零开始制作空洞骑士Hollow Knight第五集:再制作更多的敌人
  • 怎么把excel翻译成英文?这些翻译技巧记得收藏
  • 信息技术引领的智能化未来
  • 【QT开发-Pyside】使用Pycharm与conda配置Pyside环境并新建工程
  • vue选项式写法项目案例(购物车)
  • [Linux][进程] 认识进程
  • 如何安装和注册 GitLab Runner
  • 专业学习|动态规划(概念、模型特征、解题步骤及例题)
  • 数据结构与算法 #时间复杂度 #空间复杂度
  • 【多机器人轨迹规划最优解问题】
  • 机器学习及其应用领域【金融领域】
  • 【实战教程】PHP与七牛云的完美对接,你值得拥有!
  • 2024网易低代码大赛 | 想参赛但不知道搭什么?灵感就这么水灵灵地来了!
  • (附源码)基于django的电力工程作业现场物资管理系统的设计与实现-计算机毕设 22067
  • 数据链路层协议 —— 以太网协议
  • 【Javascript】一文看懂JS中的symbol到底是什么东西
  • go语言网络编程
  • LeetcodeLCR 116. 省份数量
  • Linux系统上搭建Vulhub靶场
  • Avalonia的第三方UI库SukiUI详细教程
  • https协议文件上传比http协议慢
  • Elasticsearch在大数据处理中的优势
  • cmake--target_compile_definitions
  • MATLAB数据文件读写:1.格式化读写文件
  • NFTScan | 09.16~09.23 NFT 市场热点汇总
  • rabbitmq整合skywalking并编写自定义插件增强
  • sftp登录ipv6用中括号 `sftp x@[ipv6]`
  • Python 从入门到实战25(模块)