一、什么是若依
RuoYi 是一个 Java EE 企业级快速开发平台,基于经典技术组合(Spring Boot、Apache Shiro、MyBatis、Thymeleaf、Bootstrap),内置模块如:部门管理、角色用户、菜单及按钮授权、数据权限、系统参数、日志管理、通知公告等。在线定时任务配置;支持集群,支持多数据源,支持分布式事务。官网:https://ruoyi.vip/
二、什么是mybatis-plus
MyBatis-Plus(简称 MP)是一个 MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。官网:https://baomidou.com/
三、若依+mybatis-plus
就若依的前后端分离版为例,进行集成。
-
首先从若依官网下载源码
-
下完之后运行sql脚本、安装依赖等等操作,确保项目可以运行。
3. 找到ruoyi-common的pom.xml点进去,将mybatis-plus的依赖粘贴上去,这里选用的是3.3.0版本
<!-- mybatis-plus -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.3.0</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-extension</artifactId>
<version>3.3.0</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-core</artifactId>
<version>3.3.0</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus</artifactId>
<version>3.3.0</version>
</dependency>
- 注释调MybatisConfig.java文件,找到application.yml中对应mybatis的配置,进行注释,然后在下方加上mybatis-plus的配置,启动项目,进行测试。由于我这里很多配置没有用到的就先注释了,需根据实际情况。
# MyBatis-plus配置
mybatis-plus:
mapper-locations: classpath*:mapper/**/*Mapper.xml
#实体扫描,多个package用逗号或者分号分隔
typeAliasesPackage: com.ruoyi.**.domain
configuration:
map-underscore-to-camel-case: true
cache-enabled: false
global-config:
banner: false
#刷新mapper 调试神器
refresh: true
db-config:
#主键类型 0:"数据库ID自增", 1:"用户输入ID",2:"全局唯一ID (数字类型唯一ID)", 3:"全局唯一ID UUID";
id-type: auto
#字段策略 0:"忽略判断",1:"非 NULL 判断"),2:"非空判断"
field-strategy: not_empty
#驼峰下划线转换
db-column-underline: true
#设置表前缀
#table-prefix: sys_
#数据库大写下划线转换
#capital-mode: true
#序列接口实现类配置
#key-generator: com.baomidou.springboot.xxx
#逻辑删除配置
# logic-delete-field: deleted # 全局逻辑删除的实体字段名(since 3.3.0,配置后可以忽略不配置步骤2)
# logic-delete-value: 1
# logic-not-delete-value: 0
#数据库类型
db-type: mysql
#自定义SQL注入器
#sql-injector: com.baomidou.mybatisplus.mapper.LogicSqlInjector
#自定义填充策略接口实现
#meta-object-handler: com.baomidou.springboot.xxx
- 由于若依自带代码生成器,我们需要前往模板进行修改。前往ruoyi-generator的resource下的vm目录下。
修改mapper:加上
extends BaseMapper<${ClassName}>
修改service:加上
extends IService<${ClassName}>
修改serviceImpl: 加上
extends ServiceImpl<${ClassName}Mapper,${ClassName}> implements I${ClassName}Service
加上去导入表预览一下生成的代码,没啥问题就ok了。