目录
一,导包
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
</dependency>
二、配置
#配置
mybatis-plus:
configuration:
map-underscore-to-camel-case: true
auto-mapping-behavior: full
global-config:
# 逻辑删除配置
db-config:
# 删除前
logic-not-delete-value: 0
# 删除后
logic-delete-value: 1
#mysql日志打印
logging:
level:
com:
zz:
mapper: debug
三、方法
1,条件构造器QueryWrapper常用方法
//构造QueryWrapper来进行条件的添加
QueryWrapper wrapper = new QueryWrapper();
wrapper.eq("数据库字段名", "条件值"); //相当于where条件
wrapper.between("数据库字段名", "区间一", "区间二");//相当于范围内使用的between
wrapper.like("数据库字段名", "模糊查询的字符"); //模糊查询like
wrapper.groupBy("数据库字段名"); //相当于group by分组
wrapper.in("数据库字段名", "包括的值,分割"); //相当于in
wrapper.orderByAsc("数据库字段名"); //升序
wrapper.orderByDesc("数据库字段名");//降序
wrapper.ge("数据库字段名", "要比较的值"); //大于等于
wrapper.le("数据库字段名", "要比较的值"); //小于等于
wrapper.isNotNull("数据库字段名");//不等于null
wrapper.isNull("数据库字段名");//等于null
wrapper.last("limit 1");//拼接sql 多条获取一条
2.基础方法
// 方法一: 根据主键id去查询单个结果
User user = userMapper.selectById(id);
//方法二: 根据条件去查询单个结果
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.eq("name","张三");
User user = userMapper.selectOne(wrapper);
//方法三: 根据条件查询多条数据库中的记录(没有任何条件查全部)
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.like("name","张");
List<User> users = userMapper.selectList(wrapper);
//方法四: 根据主键的id集合进行多条数据的查询
List list1 = Arrays.asList(1,2);
List<User> list2 = userMapper.selectBatchIds(list1);
//方法五:分页查询 selectPage
IPage<User> page = new Page<>(1,2);//参数一:当前页,参数二:每页记录数
QueryWrapper<User> wrapper = new QueryWrapper<>();
IPage<User> userIPage = userMapper.selectPage(page,wrapper);
//方法六:查询数据条数
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.between("age", 19, 30); //区间
Integer count = userMapper.selectCount(wrapper);
//方法七:模糊查询
QueryWrapper<User> wrapper = new QueryWrapper<>();
//左和右
wrapper.notLike("name", "b").likeRight("email", "t");
List<Map<String, Object>> maps = userMapper.selectMaps(wrapper);
//方法八:子查询
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.inSql("id", "select id from user where id < 3");//id 在子查询中查出来
List<Object> objects = userMapper.selectObjs(wrapper);
//方法九:查询全部
List<User> list = UserService.list();
//方法十:批量新增
repo.saveBatch();
//方法十一:根据主键id批量修改
repo.updateBatchById();