mybatisplus简单了解

mybatisplus是加强版mybatis,里面提供了更加简便强大的功能。

springboot整合mybatisplus,这个mybatisplus的jar包需要手动添加,不在起步依赖里面。

 

 然后整合完之后,再在创建的数据层接口哪里继承BaseMapper<User>,然后不需要做什么,这个数据层接口里面就有基本的增啥改查功能了。

 

 然后有一个@Data注解,他写在实体类上,可以省去写get,set,和构造方法,使用这个注解,需要导入一个jar依赖

 

导入的依赖:

 

 

 这个mybatisplus提供的功能有:

 

 接下来就是分页查询,分页查询,需要开启分页查询拦截器,所以需要设置一个控制器类,在这个类里面设置拦截器,

 

 然后 有个需要在yml配置文件里面设置日志输出在控制台:

 

 然后就是mybatisplus的条件查询,这个条件查询有三种表达式:

 

 使用条件查询,他需要一个Wapper对象或者lambdaWapper对象,然后用这个对象调用各种设置条件的方法

  

 

and 和or:

 然后还有当某个查询条件为空时,不再像以前那个使用那个if  xxx  != null条件查询的:

 

 

 投影属性设置:投影属性就是把那个查询出来的数据投影进行改变,或者进行一些其他操作,例如求和啥的:

 

 条件查询中的登录的mybatisplus操作的:

 

 范围查询的另一种操作:

 

 模糊匹配:

 

 全面操作如下:

  

 

 字段映射与表名映射:当数据库中的字段与java代码中的不一样时,就需要设置映射了:

 

 

 设置字段名不一样的注解是:@TableField注解:

 

 如果java代码中有数据库位编码的字段属性,那么需要在@TableField注解中设置另外一个属性:

  

 

 还有就是关闭有些字段的默认的显示,比如密码这个字段就不想让查出来,所以需要在@TableField注解中设置select属性:

 

  

 

 还有就是表名映射,表名与java代码中不一样是,使用@tableName:

  

id生成策略:mybatisplus中的默认ID生成策略就是利用那个雪花算法,得到的id是一段数字:

 

 

 所以我们可以通过设置其他的策略来控制得到id,当为数据库添加数据时,得到的id号就可以由自己控制了:

   

 

 然后这些id生成策略和表与java的映射的相关注解操作,大部分可以在yml文件中配置:

  

 

 多记录删除:根据id一次删除多个数据,这是把id传进一个list集合里面

  

 

 逻辑删除:逻辑删除并不是把数据在数据库中删除,而是他变为不可用的情况,我们可以再在每个数据后面在设置一个属性,如果逻辑删除,那么这个属性就会发生变化,从而无法被使用。为什么无法被使用,是因为sql语句,后面加了where 属性 = ,,;所以只有当那个属性是指定值时,才能被使用。

 

 他是怎么操作的呢?:

首先要在数据库中添加字段属性:

 

 然后在实体类中添加对应字段,并且使用@TableLogic设为逻辑删除字段:

 

 在yml文件中配置:

 

 还有乐观锁,锁,前面也有了解,就类似于两个用户同时进入一个程序,两个用户要拿争锁,拿到锁才能,进入程序。具体怎么操作如下:

现在数据库中添加字段:

 

 然后再实体类中添加字段:

 

 还要配置拦截器:

 

 使用乐观锁之前,需要现在对象中设置:

 

 最后就是代码生成器了:

就是把大部分代码中一样的东西抽出来,做成模板,不一样的在自己去写:

 

 介绍如下:

 

 使用的话首先需要导入相关依赖:

 

 我们需要创建一个类,在类中创建一个autoGenerator对象,然后再这个对象中设置相关配置:

 

 接下来就是数据源设置,包名设置啥的:

   

 

   

 然后完结,ssm。

 

posted @   索隆111  阅读(146)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
点击右上角即可分享
微信分享提示