
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.1</version>
</dependency>


MyBatisPlus特性
无侵入:只能增强不做改变,不会对现有工程产生影响
强大的CRUD操作:内置通用Mapper,少量配置即可实现单表CRUD操作
支持 Lambda: 编写查询条件无需担心字段写错
支持主键自动生成:
内置分页查询


@Configuration
public class MpCongfig{
@Bean
public MybatisPlusInterceptor pageInterceptor(){
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
interceptor.addInnerInterveptor(new PaginationInnerInteceptor());
return interceptor
}
}






链式编程不推荐因为太长
LambdaQueryWrapper<User>lqw = new LambdaQueryWrapper<User>();
lqw.select(User::getId,User::getName,User::getAge);
List<User>userList = userDao.selectList(lqw);
查询结果包含模型类未定义的属性
QueryWrapper<User>qm=new QueryWrapper<User>();
qm.select("count(*) as nums,gender");
qm.groupBy("gender");
List<Map<String,Object>>maps=userDao.selectMaps(qm);

字段映射与表面映射
@TableField
类型: 属性注解
作用: 设置当前属性对应的数据哭表中的字段关系





逻辑删除:为数据设置是否可用状态字段,删除时设置状态字段为不可用状态,数据保留在数据库中








