若依专题——基础应用篇

news2025/3/31 19:21:16

若依搭建

搭建后端项目

Git 克隆并初始化项目
MySQL 导入与配置
启动 Redis

搭建后端项目注意事项?

①    项目初始化慢,执行clean、package

②    MySQL导入后,修改application-druid.yml

③    Redis有密码,修改application.yml

搭建前端项目

Git 克隆并初始化项目
安装依赖(npm安装)
运行前端项目

npm install --registr=https://registry.npmmirror.com

入门案例

利用若依代码生成器,生成课程管理的前后端代码。

准备 SQL 并导入数据库
配置代码生成信息
下载代码并导入项目

功能详解

系统管理

权限控制

  • 若依内置了强大的权限控制系统,为企业级项目提供了通用的解决方案。
  • 以CRM系统为例,演示下权限功能(地址:客达天下
    • demo账号(超级管理员),查看所有功能菜单
    • zhangsan账号(市场专员),查看线索菜单
    • yueyue账号(销售专员),查看商机、合同等菜单

        RBAC(基于角色的访问控制)是一种广泛使用的访问控制模型,通过角色来分配和管理用户的菜单权限

五张表

案例:创建新用户小智并关联课研人员角色,仅限课程管理和统计分析菜单访问。

  1. 创建菜单
  2. 创建角色,并分配权限
  3. 创建用户,并关联角色

数据字典

  • 若依内置的数据字典,用于维护系统中常见的静态数据。例如:性别、状态…
  • 功能包括:字典类型管理、字典数据管理

表关系说明

表名

说明

sys_dict_type

字典类型表

sys_dict_data

字典数据表

案例:将课程管理的学科字段改为数据字典维护。

  1. 添加字典类型和数据
  2. 修改代码生成信息
  3. 下载代码,导入前端

1.

2.

3.下载代码,进行粘贴

TODO :把课程管理中的适用人群也改成数据字典

其他功能

参数设置:对系统中的参数进行动态维护。

通知公告:促进组织内部信息传递。

日志管理:轻松追踪用户行为和系统运行状况。

系统监控

监控相关:若依提供了一些列强大的监控工具,能够帮助开发者和运维快速了解应用程序的性能状态。

定时任务:若依为定时任务功能提供方便友好的web界面,实现动态管理任务。

案例:每间隔5秒,控制台输出系统时间。

  1. 添加任务类
  2. 添加任务规则
  3. 启动任务

1.

2.

3.

系统工具

表单构建:表单构建工具,只需要开发者通过图形界面和拖拽等操作,可以快速构建复杂的表单。

步骤:通过表单构建工具,单独制作一个添加课程的表单页面。

  1. 制作表单并导出
  2. 复制到前端工程
  3. 创建动态菜单

在创建动态菜单时,一定要注意路由地址、路由参数

代码生成

  • 代码生成器,根据数据库表结构自动生成前后端CRUD代码。
  • 提供三种生成模板:单表、树表、主子表(一对多)
  • 树表是一种展示层级数据的表格,能展开折叠,清晰呈现父子关系,便于管理。

系统接口

  • Swagger,能够自动生成 API 的同步在线文档,并提供Web界面进行接口调用和测试

项目结构

后端部分

模块依赖关系

前端部分

表结构

源码阅读

前端代码分析

后端代码分析

BaseController:web层通用数据处理

TableDataInfo:表格分页数据对象

AjaxResult:操作消息提醒

BaseEntity:Entity基类

  • @PreAuthorize 注解是 Spring Security 框架中用来做权限检查的。
  • 它在运行方法前先验证权限,权限够就放行,不够就拦截。

前后端交互流程

查询课程管理列表

二次开发

若依框架修改器

若依框架修改器是一个可以一键修改RuoYi框架包名、项目名等的工具。

地址:RuoYi-MT 发行版 - Gitee.com

新建业务模块

新建sky-merchant子模块

新建子模块
父工程版本锁定
sky-admin 添加依赖

注意:创建子模块时,要设置好该项目的jdk,版本为11,在高级设置里组件改为com.sky

菜品管理

案例需求利用若依代码生成器(主子表模板),生成菜品管理的前后端代码。        

步骤:利用若依代码生成器(主子表模板),生成菜品管理的前后端代码。

准备 SQL 并导入数据库
配置代码生成信息
下载代码并导入项目
升级改造

        更改菜品口味前端的显示界面,将描述改为下拉框,然后口味名称和口味数据也能进行选择,能选择多个口味数据,同时保证换一个口味名称时,口味数据会清0,把表单格式加宽了点。

注意:前端按着ctrl跳转不了方法的,安装一个插件:vue peek

页面调整

将原有的页面,调整为外卖系统的项目标识

浏览器标签页 icon 、标题
系统页面中的 logo 、标题
去除源码 & 文档
主题和自定义图标
登录页面中标题、背景图

上述几步都在vscode里改。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2323607.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

AI for CFD入门指南(传承版)

AI for CFD入门指南 前言适用对象核心目标基础准备传承机制 AI for CFDLibtorch的介绍与使用方法PytorchAutogluon MakefileVscodeOpenFOAMParaviewGambit 前言 适用对象 新加入课题组的硕士/博士研究生对AICFD交叉领域感兴趣的本科生实习生需要快速上手组内研究工具的合作研…

DeepSeek+RAG局域网部署

已经有很多平台集成RAG模式,dify,cherrystudio等,这里通过AI辅助,用DS的API实现一个简单的RAG部署。框架主要技术栈是Chroma,langchain,streamlit,答案流式输出,并且对答案加上索引。支持doc,docx,pdf,txt。…

个人学习编程(3-24) 数据结构

括号的匹配&#xff1a; if((s[i]) && now() || (s[i]] && now[)){ #include <bits/stdc.h>using namespace std;int main() {char s[300];scanf("%s",&s);int i;int len strlen(s);stack <char> st;for (i 0; i < len; i){if(…

面试八股文--框架篇(SSM)

一、Spring框架 1、什么是spring Spring框架是一个开源的Java平台应用程序框架&#xff0c;由Rod Johnson于2003年首次发布。它提供了一种全面的编程和配置模型&#xff0c;用于构建现代化的基于Java的企业应用程序。Spring框架的核心特性包括依赖注入&#xff08;DI&#xf…

跨语言语言模型预训练

摘要 最近的研究表明&#xff0c;生成式预训练在英语自然语言理解任务中表现出较高的效率。在本研究中&#xff0c;我们将这一方法扩展到多种语言&#xff0c;并展示跨语言预训练的有效性。我们提出了两种学习跨语言语言模型&#xff08;XLM&#xff09;的方法&#xff1a;一种…

Nodejs上传文件的问题

操作系统&#xff1a;window和linux都会遇到 软件环境&#xff1a;v20.10.0的Nodejs 1、前端代码如下&#xff1a; 2、后端Nodejs 2.1、注册接口 2.2、上传接口 其中memoryUpload方法代码如下&#xff1a; 3、用页面上传文件 查看具体报错原因&#xff1a; TypeError: sourc…

无人机螺旋桨平衡标准

螺旋桨平衡是确保无人机(UAV)平稳运行、可靠性和使用寿命的关键过程。螺旋桨的不平衡会导致振动、噪音&#xff0c;并加速关键部件的磨损&#xff0c;从而对飞行性能产生负面影响。 ISO 21940-11:2016标准为旋翼平衡提供了一个广泛引用的框架&#xff0c;定义了可接受的不平衡…

SpringBoot+策略模式+枚举类,使用配置文件改进,优雅消除if-else,完全符合OOP原则

需求分析 公司做物联网系统的&#xff0c;使用nettry进行设备连接&#xff0c;对设备进行数据采集&#xff0c;根据设备的协议对数据进行解析&#xff0c;解析完成之后存放数据库&#xff0c;但是不同厂家的设备协议不同。公司系统使用了使用了函数式编程的去写了一个解析类&am…

每日免费分享之精品wordpress主题系列~DAY16

主题介绍&#xff1a; 今日在网上寻找wordpress主题的时候逛到了大叔的网站&#xff0c;赶脚这个主题蛮不错的&#xff0c;于是百度一下&#xff0c;果然&#xff0c;这个主题很受欢迎。作为主题下载站追梦者也不甘落后&#xff0c;马上就发布出来了&#xff0c;希望对你们有用…

OpenCV图像拼接(9)实现图像拼接功能的一个高级接口cv::Stitcher

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 cv::Stitcher 类是OpenCV中用于实现图像拼接功能的一个高级接口。它简化了从一组部分重叠的图像创建全景图的过程&#xff0c;隐藏了许多底层细节…

dify + deepseek /qwen + win +xinference 等完成知识库建设

Dify.AI The Innovation Engine for Generative AI Applications 简介&#xff1a;Dify是一个用于构建人工智能应用程序的开源平台。我们将后端即服务和LLMOps相结合&#xff0c;简化了生成式人工智能解决方案的开发&#xff0c;使开发人员和非技术创新者都可以使用。CPU>…

模数转换电路(A/D转换器)

A/D转换&#xff0c;是将输入的模拟电压量转换成相应的数字量。 A/D转换器的类型很多&#xff0c;按工作原理可分为直接转换型和间接转换型两大类。前者直接将模拟电压量转换成数字量&#xff0c;后者是先将模拟电压量转换成一个中间量&#xff0c;再将中间量转换成数字量。 …

算法 | 麻雀搜索算法原理,公式,改进算法综述,应用场景及matlab完整代码

一、麻雀搜索算法(SSA)原理 1. 算法基础 麻雀搜索算法(Sparrow Search Algorithm, SSA)是2020年提出的一种群体智能优化算法,灵感来源于麻雀群体的觅食与反捕食行为。算法将麻雀分为三类角色:发现者(Producer):适应度最高,负责探索全局最优区域;加入者(Follower)…

《大语言模型赋能证券业开发安全:海云安技术方案在上交所专刊发表》

近日&#xff0c;海云安《大语言模型在证券业开发安全领域的探索与实践》技术方案经过上海证券交易所&#xff08;以下简称”上交所“&#xff09;行业专家评审后正式收录于《交易技术前沿——网络安全专刊&#xff08;2025年第1期 总第61期&#xff09;》。 证券信息技术研究…

【蓝桥杯】单片机设计与开发,中断系统,外部中断(下)

一、例程一&#xff1a;外部中断执行函数 #include<stc15.h>void main(void) {P20XA0;P00X00;P20X80;P00XFF;IT00;//设置外部中断0&#xff1b;上升沿下降沿均可//IT01;//设置外部中断0&#xff1b;仅下降沿EX01;//允许中断0申请中断EA 1;//打开CPU总中断while(1); }voi…

MySQL、创建数据库、表、SQL 函数:数学函数、字符串函数、日期函数、聚合函数

DAY18.1 Java核心基础 MySQL 创建数据库 数据库是一个服务&#xff0c;实际开发需要根据具体的项目创建对应的数据库实例 create database mytest1 default character set utf8 collate utf8_general_ci; create database mytest2 default character set utf8 collate utf8…

关于我对接了deepseek之后部署到本地将数据存储到mysql的过程

写在前面 今天写一下使用nodejs作为服务端&#xff0c;vue作为客户端&#xff0c;mysql的数据库&#xff0c;对接deepseek的全过程&#xff0c;要实现一个很简单的效果就是&#xff0c;可以自由的询问&#xff0c;然后可以将询问的过程存储到mysql的数据库中。 文档对接 deeps…

23种设计模式-策略(Strategy)设计模式

策略设计模式 &#x1f6a9;什么是策略设计模式&#xff1f;&#x1f6a9;策略设计模式的特点&#x1f6a9;策略设计模式的结构&#x1f6a9;策略设计模式的优缺点&#x1f6a9;策略设计模式的Java实现&#x1f6a9;代码总结&#x1f6a9;总结 &#x1f6a9;什么是策略设计模式…

vue ts+Windi CSS

1、创建vue项目 trae&#xff08;字节&#xff09;打开一个空文件夹 npm install -g vue/cli vue create my-project cd my-project vue add typescript npm run serve vue项目创建完成 2、安装windicss vue add windicss vue.config.js配置 npm install vue-router …

Angular由一个bug说起之十五:自定义基于Overlay的Tooltip

背景 工具提示&#xff08;tooltip&#xff09;是一个常见的 UI 组件&#xff0c;用于在用户与页面元素交互时提供额外的信息。由于angular/material/tooltip的matTooltip只能显示纯文本&#xff0c;所以我们可以通过自定义Directive来实现一个灵活且功能丰富的tooltip Overlay…