ToB企服应用市场:ToB评测及商务社交产业平台

标题: MyBatisPlus [打印本页]

作者: 不到断气不罢休    时间: 2024-10-18 18:35
标题: MyBatisPlus
一,MybatisPlus根本

1.1要使用mybatisPlus需要的两个步骤;

1.引入MybatisPlus的依赖
点击检察代码
  1. <dependency>
  2.     <groupId>com.baomidou</groupId>
  3.     <artifactId>mybatis-plus-boot-starter</artifactId>
  4.     <version>3.5.3.1</version>
  5. </dependency>
复制代码
因为此依赖包含了mybatis的起步依赖,以是完全可以代替mybatis的起步依赖。
2.对mapper的定义
在我们自己定义的mapper接口中,让接口实现BaseMapper接口,BaseMapper中已经定义了根本的CRUD方法(单表),可以直接使用。
BaseMapper中的方法:

留意:继承的BaseMapper的时间需要指定泛型,这样才气知道方法针对的表,示例:

1.2常用注解:

2.1较复杂的方法

以上都是一些简单的CRUD,另有更多相对复杂的方法,在使用这些复杂方法的时间,除了新增方法,其他方法都会使用到查新条件,也就是where条件,示例如下:

全部我们可以使用条件构造器作为Wrapper条件。
wrapper是条件构造的抽象类,有许多的实现类,Wrapper的实现类的继承关系如下:


此中QueryWrapper在父类AbstractWrapper的根本上增长了selet方法,允许查询指定的字段。
此中UpdateWrapper在父类AbstractWrapper的根本上增长了set方法,允许指定SQL中的set部分。
2.2复杂方法的实际使用

2.2.1QueryWrapper的使用:
这个类的使用不仅限于查询,还可以在删除和修改的时间使用。
查询:查询出名字中带o的,存款大于等于1000元的人。
点击检察代码
  1. @Test
  2. void testQueryWrapper() {
  3.     // 1.构建查询条件 where name like "%o%" AND balance >= 1000
  4.     QueryWrapper<User> wrapper = new QueryWrapper<User>()
  5.             .select("id", "username", "info", "balance")
  6.             .like("username", "o")
  7.             .ge("balance", 1000);
  8.     // 2.查询数据
  9.     List<User> users = userMapper.selectList(wrapper);
  10.     users.forEach(System.out::println);
  11. }
复制代码
更新:更新用户名为jack的用户的余额为2000。
点击检察代码
  1. @Test
  2. void testUpdateByQueryWrapper() {
  3.     // 1.构建查询条件 where name = "Jack"
  4.     QueryWrapper<User> wrapper = new QueryWrapper<User>().eq("username", "Jack");
  5.     // 2.更新数据,user中非null字段都会作为set语句
  6.     User user = new User();
  7.     user.setBalance(2000);
  8.     userMapper.update(user, wrapper);
  9. }
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4