*MyBatis-Plus(简称MP)是基于MyBatis框架基础上开发的增强型工具,旨在简化开发、提高效率
*开发方式
*基于MyBatis使用MyBatisPlus
*基于Spring使用MyBatisPlus
*基于SpringBoot使用MyBatisPlus
手动添加MP起步依赖
注意事项
由于MP并未被收录到idea的系统内置配置,无法直接选择加入
定义数据接口,继承BaseMapper<User>
直接可CURD
MyBtais特性
*无侵入︰只做增强不做改变,不会对现有工程产生影响
*强大的 CRUD操作:内置通用Mapper,少量配置即可实现单表CRUD操作
*支持Lambda:编写查询条件无需担心字段写错
*支持主键自动生成
*内置分页插件......
标准数据层开发
*标准数据层CRUD功能
*分页功能
1.设置分页拦截器作为Spring管理bean
开启日志
2.执行分页查询
DQL编程控制
*条件查询方式
*MyBatisPlus将书写复杂的SQL进行了封装,使用编程的形式完成查询条件的组合
条件查询----设置查询条件
*格式一:常规格式
*格式二:链式编程格式
*格式三:lambda格式(推荐)
*格式四:lambda(推荐)
条件查询----组合查询条件
*并且(and)
*或者(or)
条件查询----null值处理
*if语句控制条件追加
查询投影
*查询结果包含模型类中部分属性
*查询结果包含模型类中未定义的属性
查询条件
*范围匹配(> 、 = 、 between)
*模糊匹配( like)
*空判定( null)
*包含性匹配( in)
*分组(group )
*排序( order)
*.....
*用户登录(eq匹配)
*购物设定价格区间、户籍设定年龄区间(le ge匹配 或 between匹配)
*查信息,搜索新闻(非全文检索版:like匹配)
*统计报表(分组查询聚合函数)
字段映射与表名映射
*名称:@TableField
*类型:属性注解
*位置:模型类属性定义上方
*作用:设置当前属性对应的数据库表中的字段关系
*范例:
*相关属性
value(默认):设置数据库表字段名称
select:设置属性是否参与查询,此属性与select()映射配置不冲突
*名称:@TableField
*类型:属性注解
*位置:模型类属性定义上方
*作用:设置当前属性对应的数据库表中的字段关系
*范例:
*相关属性:
value:设置数据库表字段名称
exist:设置属性在数据库表字段中是否存在,默认为true。此属性无法与value合并使用
*名称:@TableName
*类型:类注解
*位置:模型类定义上方
*作用:设置当前类对应的数据库表关系
*范例:
*相关属性:
value:设置数据库表名称
DML编程控制
Insert
id生成策略控制
*不同的表应用不同的id生成策略
*日志:自增(1,2,3,4,.......)
*购物订单:特殊规则(FQ23948AK3843)
*外卖单:关联地区日期等信息(10 04 20200314 34 91)
*关系表:可省略id
*......
Delete
Update
*
*查询投影
*查询条件设定
*字段映射与表名
*
- MyBatis-Plus MyBatis Plusmybatis-plus mybatis-plus mybatis plus mybatis-plus springboot mybatis mapper mybatis-plus springboot mybatis plus mybatis-plus mybatisplus mybatis java mybatis-plus typehandler mybatis类型 mybatis-plus mybatis spring java mybatis-plus语句mybatis日志 mapper-locations mapperlocations mybatis-plus mybatis-plus实体mybatis时间