renren-security快速开发平台技术文档
一、项目概述
renren-security是一个基于SpringBoot3.x和Vue3的前后端分离Java快速开发平台,集成了权限管理、代码生成、定时任务等企业级功能,具有以下核心优势:
- 采用主流技术栈(SpringBoot3/Shiro/Vue3/MyBatis-Plus)
- 支持多数据库(MySQL/Oracle/SQL Server等)
- 提供可视化代码生成器
- 完善的数据权限控制
- 内置XSS防护机制
二、安装指南
环境要求
| 组件 | 版本要求 |
|---|---|
| JDK | 17+ |
| Maven | 3.6+ |
| MySQL | 8.0+ |
| Node | 16+ |
后端部署步骤
- 克隆项目源码:
git clone https://gitee.com/renrenio/renren-security.git
- 创建数据库并导入数据:
CREATE DATABASE renren_security CHARACTER SET utf8mb4;
USE renren_security;
SOURCE /path/to/renren-security/renren-admin/db/mysql.sql;
- 修改数据库配置:
# renren-admin/src/main/resources/application-dev.yml
spring:
datasource:
url: jdbc:mysql://localhost:3306/renren_security?useUnicode=true&characterEncoding=UTF-8
username: your_username
password: your_password
- 编译项目:
mvn clean install
- 启动后端服务:
# 在IDEA中运行AdminApplication.java
# 或使用命令:
mvn spring-boot:run -pl renren-admin
前端部署步骤
- 进入前端目录:
cd renren-ui
- 安装依赖:
npm install
- 启动前端服务:
npm run dev
三、使用说明
系统登录
访问 http://localhost:8080 使用默认账号:
- 用户名:admin
- 密码:admin
核心功能模块
-
系统管理
- 用户管理:支持多维度用户查询与权限分配
- 角色管理:基于RBAC模型的权限控制
- 菜单管理:支持三级菜单配置
-
代码生成器
- 单表生成:自动生成Entity/DAO/Service/Vue代码
- 多表关联:支持主子表联合生成
-
定时任务
- 动态任务管理
- 执行日志追踪
-
文件存储
- 本地存储
- 七牛云/阿里云OSS集成
四、API文档
基础API规范
@RestController
@RequestMapping("/api/sys/user")
public class SysUserController {
@Autowired
private SysUserService sysUserService;
@GetMapping("/list")
@RequiresPermissions("sys:user:list")
public Result<PageData<SysUserDTO>> list(@RequestParam Map<String, Object> params){
PageData<SysUserDTO> page = sysUserService.page(params);
return new Result<PageData<SysUserDTO>>().ok(page);
}
}
常用API示例
- 用户登录
POST /api/login
Body: {username: "admin", password: "admin", captcha: "1234"}
- 获取用户列表
GET /api/sys/user/list?page=1&limit=10&deptId=2
Headers: {"token": "xxxx"}
- 代码生成接口
POST /api/generator/generate
Body: {
"tableName": "sys_user",
"moduleName": "system",
"author": "developer"
}
五、项目结构说明
后端模块
renren-admin
├─modules
│ ├─sys # 核心系统模块
│ ├─security # 认证授权模块
│ ├─oss # 文件存储服务
│ └─job # 定时任务
renren-generator
└─resources
├─template # 代码生成模板
└─mapper # MyBatis映射文件
前端结构
src
├─api # 接口定义
├─assets # 静态资源
├─components # 通用组件
├─router # 路由配置
├─store # Pinia状态管理
└─views # 页面组件
六、扩展开发
自定义数据权限
@DataFilter(tableAlias = "u", user = false)
public List<UserEntity> queryByDept(Map<String, Object> params) {
return mapper.queryList(params);
}
添加新模块步骤
- 在
renren-admin/modules创建新包 - 配置Shiro权限注解
- 前端在
src/views下创建对应目录 - 在路由配置中添加新菜单
本平台通过合理的模块化设计,使开发者能快速进行功能扩展和二次开发。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



