MyBatis-Plus(简称MP)是一个 MyBatis 的增强工具,在 Mybatis 的基础上只做增强不做改变,为简化开发、提高效率而生。
MP会内置集成部分SQL方法,可以直接使用,而不用一个SQL需求对应一个Mybatis下的一个SQL条目。
- pom.xml 引入Mybatis-Plus的jar坐标,覆盖Spring-MyBat
2.修改application.yml配置文件
开启AR功能(ActiveRecord)领域模型 1. 实体类开启AR (同时开启Dao层AR)继承MP特殊类ModelModel隶属于:com.baomidou.mybatisplus.extension.activerecord.ModelT泛型:当前的实体类 由于Model类的存在,那么就可以获得MP封装了基于当前表(泛型)的基础方法
默认会寻找当前数据源下,和实体类名相同的表、同时实现主键序列方法
MP的大部分方法都是依赖主键来生成SQL的,所以需要指定标识实体类中的主键
测试实体类AR功能,查看MP提供的封装方法
被关键字Model修饰的就是MP的内置方法
如果MyBatis和MyBatis-plus方法重复,MyBatis方法优先
MP和AR的关系: MP是Mybatis-Plus的简称,是一个完整框架体系;AR是指一个模型类对应一个关系型数据库中的一张表;AR只是MP的一个功能而已。
总结: 1. 实体类,Dao层,Service层开启AR后,可以使用MP的内置方法,减少了SQL代码的重复书写。2. 底层实现是hibernate框架结构。用类和方法来实现SQL功能,由于类和方法的局限性,复杂SQL需求,还是需求原始的SQL来完成3. MyBatis-Plus不是为了取代MyBatis,是在其基础上做的功能升级,但无法替代,他们双生的魂斗罗。