MybatisPlus

<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

类型: 属性注解

作用: 设置当前属性对应的数据哭表中的字段关系

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

相关推荐
222you15 小时前
Redis的主从复制和哨兵机制
java·开发语言
江湖有缘15 小时前
零基础入门:使用 Docker 快速部署 Organizr 个人主页
java·服务器·docker
chilavert31815 小时前
技术演进中的开发沉思-357:重排序(下)
java·后端
天下代码客15 小时前
使用electronc框架调用dll动态链接库流程和避坑
前端·javascript·vue.js·electron·node.js
Boop_wu15 小时前
Spring生态
java·后端·spring
jzheng861015 小时前
Spring Boot(快速上手)
java·spring boot·后端
wgslucky15 小时前
SpringBoot解决Request和Response的内容多次读取的问题
java·spring boot·多次读取request数据
wangjialelele15 小时前
Linux下的IO操作以及ext系列文件系统
linux·运维·服务器·c语言·c++·个人开发
Sylvia-girl15 小时前
IO流~~
java·开发语言
weixin1997010801615 小时前
【性能提升300%】仿1688首页的Webpack优化全记录
前端·webpack·node.js