若依前后端分离项目中可以删除哪些原若依有的?
在若依(RuoYi)前后端分离项目中完成二次开发后,可以删除以下未使用的模块和文件以简化项目结构。以下分模块和风险点说明:
---
### **一、后端(Spring Boot)可删除内容**
#### 1. **未使用的功能模块**
- **系统监控模块** (`ruoyi-admin/src/main/java/com/ruoyi/project/monitor`)
- 删除目录:`controller/monitor`、`domain/monitor`、`mapper/monitor`、`service/monitor`
- 删除相关表:`sys_logininfor`(登录日志)、`sys_oper_log`(操作日志)、`sys_job`(定时任务)
- **定时任务模块** (`ruoyi-quartz`)
- 删除整个`ruoyi-quartz`模块(如果未使用定时任务)。
- **代码生成模块** (`ruoyi-generator`)
- 删除整个`ruoyi-generator`模块(如果不需要在线生成代码)。
- **系统管理冗余功能** (`ruoyi-system`)
- 若已自定义权限管理,可删除原角色/菜单/部门/岗位的代码(保留`SysUser`相关核心逻辑)。
#### 2. **依赖项清理**
- **`pom.xml`中无用依赖**:
```xml
<!-- 若不需要Swagger -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
</dependency>
<!-- 若不需要Redis -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
```
#### 3. **资源和配置**
- **SQL初始化脚本** (`ruoyi-admin/src/main/resources/sql`)
- 删除与已移除模块相关的SQL文件(如`quartz.sql`、`ry_config.sql`)。
- **静态资源** (`ruoyi-admin/src/main/resources/static`)
- 删除监控页面的HTML/CSS/JS文件(如`monitor`目录)。
---
### **二、前端(Vue.js)可删除内容**
#### 1. **页面和路由**
- 删除`src/views`下未使用的目录:
- `monitor`(监控页面)
- `tool/gen`(代码生成)
- `system/job`(定时任务)
- 修改`src/router/index.js`,移除对应的路由配置。
#### 2. **API和权限**
- 删除`src/api`下相关接口定义(如`monitor.js`、`job.js`)。
- 清理`src/store/modules/permission.js`中未使用的路由权限标识。
#### 3. **组件和资源**
- 删除`src/components`中仅用于已移除模块的组件(如`InnerLink`)。
- 移除`public/static`下的冗余图片或第三方库。
---
### **三、数据库清理**
```sql
-- 删除监控相关表
DROP TABLE IF EXISTS sys_logininfor, sys_oper_log;
-- 删除定时任务表
DROP TABLE IF EXISTS sys_job, sys_job_log;
-- 删除代码生成相关表
DROP TABLE IF EXISTS gen_table, gen_table_column;
```
---
### **四、配置调整**
1. **后端配置** (`application.yml`):
- 注释或删除`spring.quartz`配置(若移除了定时任务)。
- 关闭Swagger(若未使用):
```yaml
swagger:
enabled: false
```
2. **前端配置** (`vue.config.js`):
- 移除代理配置中已删除后端模块的路径。
---
### **五、注意事项**
1. **依赖冲突**:删除依赖后,运行`mvn clean install`确保无编译错误。
2. **公共引用**:检查是否删除了被其他模块依赖的公共工具类(如`StringUtils`)。
3. **数据备份**:操作前备份数据库,防止误删关键数据。
4. **权限残留**:确保前端菜单和权限配置与后端接口一致,避免出现404错误。
---
### **六、精简后的典型结构**
```
后端(保留核心):
ruoyi-admin
└── src/main/java/com/ruoyi
├── config # 保留必要配置(如Security、MyBatis)
├── controller # 自定义的Controller
├── service # 业务逻辑
└── mapper # 数据层
前端(精简后):
src
├── api # 仅保留需要的接口
├── views # 自定义页面
└── router # 简化后的路由
```
按需删除上述内容后,项目将更轻量且易于维护。建议在删除前逐模块验证,确保不影响现有功能。