- 若依系统简介
- 若依概述
若依微服务版RuoYi-Cloud,基于Spring Boot、Spring Cloud & Alibaba、OAuth2的前后端分离的后台管理系统。
RuoYi-Cloud 是一个 Java EE 企业级快速开发平台,基于经典技术组合(Spring Boot、Spring Cloud & Alibaba、OAuth2、Vue、Element-UI),
内置模块如:部门管理、角色用户、菜单及按钮授权、数据权限、系统参数、日志管理、代码生成等。在线定时任务配置;支持集群,支持多数据源。
-
- 官方文档地址
若依微服务官网地址 介绍 | RuoYi
-
- 微服务技术选型
- 后端技术栈:
MyBatis、Spring、Spring Boot、Spring Cloud & Alibaba、Nacos、Sentinel
- 前端VUE技术栈:
ES6、vue、vuex、vue-router、vue-cli、axios、element-ui
-
- 系统微服务模块骨架
- 后端项目骨架,如图所示:
com.ruoyi
├── ruoyi-ui // 前端框架 [80]
├── ruoyi-gateway // 网关模块 [8080]
├── ruoyi-auth // 认证中心 [9200]
├── ruoyi-api // 接口模块
│ └── ruoyi-api-system // 系统接口
├── ruoyi-common // 通用模块
│ └── ruoyi-common-core // 核心模块
│ └── ruoyi-common-datascope // 权限范围
│ └── ruoyi-common-datasource // 多数据源
│ └── ruoyi-common-log // 日志记录
│ └── ruoyi-common-redis // 缓存服务
│ └── ruoyi-common-security // 安全模块
│ └── ruoyi-common-swagger // 系统接口
├── ruoyi-modules // 业务模块
│ └── ruoyi-system // 系统模块 [9201]
│ └── ruoyi-gen // 代码生成 [9202]
│ └── ruoyi-job // 定时任务 [9203]
│ └── ruoyi-file // 文件服务 [9300]
├── ruoyi-visual // 图形化管理模块
│ └── ruoyi-visual-monitor // 监控中心 [9100]
├──pom.xml // 公共依赖
- 前端项目骨架结构,如图所示:
├── build // 构建相关
├── bin // 执行脚本
├── public // 公共文件
│ ├── favicon.ico // favicon图标
│ └── index.html // html模板
├── src // 源代码
│ ├── api // 所有请求
│ ├── assets // 主题字体等静态资源
│ ├── components // 全局公用组件
│ ├── directive // 全局指令
│ ├── layout // 布局
│ ├── router // 路由
│ ├── store // 全局 store管理
│ ├── utils // 全局公用方法
│ ├── views // view
│ ├── App.vue // 入口页面
│ ├── main.js // 入口 加载组件 初始化等
│ ├── permission.js // 权限管理
│ └── settings.js // 系统配置
├── .editorconfig // 编码格式
├── .env.development // 开发环境配置
├── .env.production // 生产环境配置
├── .env.staging // 测试环境配置
├── .eslintignore // 忽略语法检查
├── .eslintrc.js // eslint 配置项
├── .gitignore // git 忽略项
├── babel.config.js // babel.config.js
├── package.json // package.json
└── vue.config.js // vue.config.js
-
- 系统微服务技术架构
若依分布式架构设计,如图所示:
- 若依微服务项目部署
- 准备工作
项目需要的基础环境需求如下:
JDK >= 1.8 (推荐1.8版本)
Mysql >= 5.7.0 (推荐5.7版本)
Redis >= 3.0
Maven >= 3.0
Node >= 10
nacos >= 1.3.0
sentinel >= 1.6.0
-
- 安装Redis
Redis官网:
http://www.redis.cn/
Windows版本下载以后,网址如下:
Releases · microsoftarchive/redis · GitHub)
windows下的安装,直接解压,其个目录如下:
安装windows下安装服务,在根目录启动命令行,执行
redis-server --service-install redis.windows.conf
启动redis服务
redis-server --service-start
其它redis指令
redis-server --service-stop //停止服务
redis-server --service-uninstall //卸载服务
连接测试redis,在redis根路径执行(默认端口6379)
redis-cli -h 127.0.0.1 -p 6379
-
- 安装MySql数据库
(省略)
-
- 安装Nacos服务治理业务
第一步:Nacos下载,可在浏览器直接输入如下地址:
Releases · alibaba/nacos · GitHub
第二步:选择对应版本,直接下载,如图所示:
第三步:解压Nacos(最好不要解压到中文目录下),其目录结构如下:
第四步:打开/conf/application.properties里打开默认配置,并基于你当前环境配置要连接的数据库,连接数据库时使用的用户名和密码:
### If use MySQL as datasource:
spring.datasource.platform=mysql
### Count of DB:
db.num=1
### Connect URL of DB:
db.url.0=jdbc:mysql://127.0.0.1:3306/ry-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=root
db.password=root
-
- 克隆RuoYi-Cloud微服务项目
选择项目指定目录,然后通过Git指令克隆项目
git clone https://gitee.com/y_project/RuoYi-Cloud.git
克隆下来的项目其目录机构如下:
-
- 初始化RuoYi-Cloud微服务项目数据
第一步:创建数据库ry-cloud,编码为utf8mb4,然后执行sql目录下的ry_20210108.sql和quartz.sql(可选),文件成功以后,在ry-cloud库中出现如下表。
第二步:执行sql目录下的ry_config_20201222.sql,然后会创建一个数据ry-config数据库,库中的表如下:
- 若依后端微服务启动运行
- 启动Nacos服务
第一步:进入nacos的bin目录,启动nacos(standalone代表着单机模式运行,非集群模式):
startup.cmd -m standalone
第二步:访问Nacos服务
打开浏览器,输入http://localhost:8848/nacos地址,出现如下登陆页面:
默认登陆用户名和密码都为nacos,登陆成功以后,进入如下页面:
打开配置列表,如图所示:
然后从上往下挨个编辑,把设计到连接Mysql和Redis的所有地方,改为自己对应的用户名和密码,以网关的配置文件ruoyi-gateway-dev.yml为例,如图所示:
-
- 基于IDEA打开项目
第一步:基于IDEA打开项目,如图所示:
第二步:项目打开以后,配置maven下载项目依赖。
-
- 启动并检测后端项目服务
第一步:依次启动ruoyi-gateway,ruoyi-auth,ruoyi-modules下的ruoyi-system。
第二步:检测nacos的服务列表,如图所示:
- 若依前端项目配置及运行
- 安装项目依赖
第一步:选中前端项目,如图所示:
第二步:右键前端项目,打开终端命令行,如图所示:
第三步:在命令行输入npm install 安装项目依赖,如图所示:
-
- 启动运行前端项目
第一步:在命令行输入 npm run dev 启动运行前端服务,如图所示:
第五步:浏览器输入localhost进行访问,进入登陆页面,如图所示
第六步:输入账号(admin/admin),登陆系统,如图所示: