若依框架(前后端分离版本)总结

Posted 我那个果味

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了若依框架(前后端分离版本)总结相关的知识,希望对你有一定的参考价值。

一、官方介绍

官网文档地址

1、仔细阅读官方文档

我觉得在学习任何技术 或者框架之前 一定要先仔细浏览阅读人家的官方文档,所以这一点很重要。

其实官网文档已经给我们做了很详细的介绍,我个人认为这就是只是一个工具而已,人家已经做好很多东西,而我们要做的就是去熟悉人家的工具,并且吸收人家的设计思想,然后变成自己的东西。再者基础上去开发。所以还是自我做个总结吧。

2.若依框架的下载及使用

官方文档已经写的很详细了。

若依框架前后端分离版本 官网下载地址

(1)环境部署  记得装好node

(2)后端运行

  • 记得先导入数据库脚本。
  • 修改配置文件。(数据库 数据源的配置以及服务端口 默认8080)
  • 因为项目中用到了redis 所以我们还要下载并启动 redis(默认端口6379)

配置文件在 ruoyi-admin 模块下  如图:

application.yml-----项目的相关配置

application-druid.yml----项目数据源的配置

出现下图表示启动成功

(♥◠‿◠)ノ゙  若依启动成功   ლ(´ڡ`ლ)゙  
 .-------.       ____     __        
 |  _ _   \\      \\   \\   /  /    
 | ( ' )  |       \\  _. /  '       
 |(_ o _) /        _( )_ .'         
 | (_,_).' __  ___(_ o _)'          
 |  |\\ \\  |  ||   |(_,_)'         
 |  | \\ `'   /|   `-'  /           
 |  |  \\    /  \\      /           
 ''-'   `'-'    `-..-'    

(3)前端运行

# 进入项目目录 ruoyi-ui
cd ruoyi-ui

# 安装依赖
npm install

# 强烈建议不要用直接使用 cnpm 安装,会有各种诡异的 bug,
  可以通过重新指定 registry 来解决 npm 安装速度慢的问题。
npm install --registry=https://registry.npmmirror.com

# 本地开发 启动项目
npm run dev

在启动成功后会自动弹出登录页面  默认账户/密码 admin/admin123
若能正确展示登录页面,并能成功登录,菜单及页面展示正常,则表明环境搭建成功。

二、了解若依前后端项目结构

后端结构:

com.ruoyi     
├── common            // 工具类
│       └── annotation                    // 自定义注解
│       └── config                        // 全局配置
│       └── constant                      // 通用常量
│       └── core                          // 核心控制
│       └── enums                         // 通用枚举
│       └── exception                     // 通用异常
│       └── filter                        // 过滤器处理
│       └── utils                         // 通用类处理
├── framework         // 框架核心
│       └── aspectj                       // 注解实现
│       └── config                        // 系统配置
│       └── datasource                    // 数据权限
│       └── interceptor                   // 拦截器
│       └── manager                       // 异步处理
│       └── security                      // 权限控制
│       └── web                           // 前端控制
├── ruoyi-generator   // 代码生成(可移除)
├── ruoyi-quartz      // 定时任务(可移除)
├── ruoyi-system      // 系统代码
├── ruoyi-admin       // 后台服务
├── ruoyi-xxxxxx      // 其他模块

前端结构:

├── build                      // 构建相关  
├── bin                        // 执行脚本
├── public                     // 公共文件
│   ├── favicon.ico            // favicon图标
│   └── index.html             // html模板
│   └── robots.txt             // 反爬虫
├── src                        // 源代码
│   ├── api                    // 所有请求
│   ├── assets                 // 主题 字体等静态资源
│   ├── components             // 全局公用组件
│   ├── directive              // 全局指令
│   ├── layout                 // 布局
│   ├── plugins                // 通用方法
│   ├── 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

 数据库表结构:

每个表的功能

gen_table,gen_table_column

    自动生成代码的两张表,读取mysql中需要生成代码的表,加载到这两个模板表中。
    一个是生成代码后的包配置,一个是列配置。


sys_config

    系统参数表,系统常用的一些参数,包括密码,皮肤,主题之类的。


sys_dept

    部门表,部门id,父id,祖级id必须保持一致。方便通过一个部门,找到该部门属于哪个分公司和总公司。


sys_dict_data

    字典数据表
    通过dict_type字段和字典类型表进行关联。

sys_dict_type

    字典类型表


sys_job

    计时任务表

 

sys_job_log

    计时任务日志表


sys_logininfo

    用户登录日志表


sys_menu

    菜单表

sys_notice

    系统通知表,用来进行一些系统通知,比如版本更新之类的


sys_oper_log

    系统操作日志表


sys_post

    岗位表

 

sys_role

    角色表
    用来控制用户的权限。
    role_key这个字段不能重复,必须是英文。


sys_user

    用户表

sys_role_dept

    角色部门关联表
    用来进行解耦


sys_role_menu

    角色菜单关联表
    每个角色拥有不同的菜单操作权限。


sys_user_post

    用户岗位关联表
    该用户属于哪个岗位


sys_user_role

    用户角色关联表


表关系

RBAC(基于角色的访问控制)

    在 RBAC 中,权限与角色相关联,用户通过成为适当角色的成员而得到这些角色的权限。这就极大地简化了权限的管理。这样管理都是层级相互依赖的,权限赋予给角色,而把角色又赋予用户,这样的权限设计很清楚,管理起来很方便。

 

 

 

 

若依前后端分离版本(RouYi-vue)框架使用Redis集群

目录

1、集群模式配置

2、单机模式配置


更改application.yml配置,注释掉redis下面的host和port,增加cluster节点及其子节点nodes,node值为以逗号分隔的多个节点配置,如ip1:port1,ip2:port2,ip3:port3, 也可以用每行一个配置的形式(配置更清晰),每行配置格式如:- ip1:port1。

1、集群模式配置

redis:
    cluster:
      nodes:
        - 10.10.10.10:6380
        - 10.10.10.10:6381
        - 10.10.10.10:6382
        - 10.10.10.10:6383
        - 10.10.10.10:6384
        - 10.10.10.10:6385
    # 数据库索引
    database: 1
    # 密码
    password: Founder@123
    # 连接超时时间
    timeout: 10s
    jedis:
      pool:
        # 连接池中的最小空闲连接
        min-idle: 0
        # 连接池中的最大空闲连接
        max-idle: 8
        # 连接池的最大数据库连接数
        max-active: 8
        # #连接池最大阻塞等待时间(使用负值表示没有限制)
        max-wait: -1ms

2、单机模式配置

redis:
    # 地址
    host: 172.19.57.134
    # 端口,默认为6379
    port: 6379
    # 数据库索引
    database: 1
    # 密码
    password: *****
    # 连接超时时间
    timeout: 10s
    lettuce:
      pool:
        # 连接池中的最小空闲连接
        min-idle: 0
        # 连接池中的最大空闲连接
        max-idle: 8
        # 连接池的最大数据库连接数
        max-active: 8
        # #连接池最大阻塞等待时间(使用负值表示没有限制)
        max-wait: -1ms

以上是关于若依框架(前后端分离版本)总结的主要内容,如果未能解决你的问题,请参考以下文章

若依前后端分离版本(RouYi-vue)框架使用Redis集群

RuoYi(若依开源框架)-前后端分离版-前端流程简单分析

RuoYi(若依开源框架)-前后台分离版-后端流程简单分析

若依前后端分离框架去掉首页 登录后跳转至动态路由的第一个路由

若依框架(前后端分离)打war包部署到linux

若依管理系统(前后端分离版)部署并实现持续发布