黑马|最新AI+若依 |初识项目

本章主要内容是:

1.快速搭建了若依前后端项目在本地

2.实现了单表的增删改查快速生成

文章目录

  • 介绍
    • 1.若依介绍
    • 2.若依的不同版本
    • 3.项目运行环境
  • 初始化前后端项目
    • 1.下载若依项目
    • 2.初始化后端
      • a.把表导入到数据库中
      • b.更改application.yml文件
    • 3.初始化前端
      • a.安装依赖
      • b.改后端请求地址
      • c.启动应用
  • 利用若依快速生成代码
    • 1.导入基础表到数据库
    • 2.数据表单设置
      • a. 选定新建的表
      • b.修改生成配置
      • c .下载生成的代码到本地
      • d.将文件放到前后端项目中
      • e.单表增删改查完成
  • 结束语

介绍

若依是一个快速开发平台,支持后台管理系统开发,包括登录权限控制和日志记录等功能,极大简化了开发流程。它具有强大的代码生成器,可根据数据表结构自动生成前后端代码,提高开发效率和代码一致性。此外,若依还支持AI辅助编程,帮助开发者面对复杂业务需求时实现高效开发。课程内容分为基础应用、项目实战和原理三部分,涵盖了若依框架、AI工具使用、数据库、前后端技术和VUE3等技能。若依框架提供多个版本,以适应不同开发场景和技术要求,其中包括针对iOS和Android平台的uni APP版本以及基于Spring Boot和Spring Cloud的微服务架构版本。课程着重讲解了若依APP版本及其采用的前后端分离架构,指导学生通过克隆项目仓库、安装依赖和运行开发环境等步骤搭建项目,并使用若依的代码生成器自动化生成代码。此外,还介绍了项目自动更新和部署的方法,以及前端功能测试的重要性,确保项目顺利运行。

1.若依介绍

若依内置了丰富的通用模块,涵盖了后台管理系统,常见的系统登录权限控制、日志记录等等。我们把代码克隆下来,直接运行就可以访问了。若依自带的通用模块功能,找到若依的关键界面登录功能,若依帮我们写好了,直接使用登录一下。这些就是录音自带的权限控制相关,还有日志记录相关的等等功能。这些模块集成进一步简化了我们的开发流程,让我们可以专注于业务能力的实现。若依还有一个更强大的功能生成器,在实际的开发中,我们经常会遇到需要编写大量重复代码的情况。登山改造操作。但这工具在这里发挥了巨大的作用。我们只需要定义好数据表的结构,如果一定能自动为我们生成前后端的代码,下面我们来感受一下这个就是我们后期单片片要完成的项目,找到若依的代码生成工具,我们只需要将这些业务表的结构交给如意进行管理。就可以生成前后端代码了。点开来看一下,这些是后端代码,这些是前端代码,咱们将这些代码复制下来,导入到开发环境当中,就可以生成这些功能的前后端代码了。包括增删改查功能,注意是前后端代码,有了代码升级的功能,谁谁谁谁什么满满的工作量。同时也提高了代码的一致性和可维护性。我们可以看到后台系统的通用功能模块和基础代码生成。如果一也能实现,将来我们可以把通用功能和技术代码交给若依来完成。

2.若依的不同版本

1.我们先来看第一个版本是前后端很合开发版本,后端采用了spring boot, 前端则选择bootstrap, 是早期web开发的常见模式。由于前端与后端代码为同一个项目当中,目前已经被市场淘汰了,我们了解一下即可。

2.第二个vue是前后端分离版本,后端同样的应用spring boot前端则改为vue,使得企业后端可以并行开发和独立部署。这是目前广泛采用的主流开发模式,这种模式对于单体项目来说非常合适,能够满足大多数的开发需求。

3.但是面对中大型的单架构,可能就会遇到的瓶颈或扩展性的问题等等。此时我们就要选第三个,若依cloud微服务版本后端升级为spring cloud阿里巴巴微服务的架构设计,确保系统延伸性和稳定性。

4.如果你还想让后台管理系统继续去适配移动端访问的话,可以选择ray APP这个版本。这个版本利用了uni APP加vivo框架强大的功能,实现了一次编写多端运行的开发模式。这意味着可以用套套代码来适配苹果的IOS安卓以及各种小程序和H5页面,极大的提高了开发效率,并降低了跨平台维护的复杂性。这里需要强调一下,如果你APP这个版本并没有去提供后端代码,我们可以结合真实的业务需求适配单体的。

3.项目运行环境

下面介绍一下运行此版本所需要的软件环境。第一个我们需要安装java的第二个安装关系数据库mysql,第三个安装非关键数据库redis,第四个安装项目构建工具maven。当然你不用这么高的也没有关系比如jdk用 1.8 ,MySQL用 5.7

image-20240706212001312

初始化前后端项目

1.下载若依项目

后端地址: https://gitee.com/y_project/RuoYi-Vue

前端地址: git clone https://github.com/wzs28150/RuoYi-Vue3.git

2.初始化后端

a.把表导入到数据库中

打开数据库操作软件然后创建名字为ry-vue的库,然后运行SQL脚本,选中数据库sql文件,位置在项目同级的sql文件夹下面一共两个

image-20240707172114385

b.更改application.yml文件

  • 更改数据库连接密码,变成你本地数据库的连接密码。如果你redis设置密码了的话也需要更改application-druid.yml文件中的password属性。还有就是需要更改log日志的本地位置,在logback.xml文件中的log.path属性,文件需要在本地存在,要不然会报错
  • 以上文件都是在ruoyi-admin项目中更改的。

3.初始化前端

a.安装依赖

  • 打开项目到 VScode 中然后执行 npm install 或者yarn -V 或者 npm i下载项目前端需要的依赖

    遇到的问题:因为之前别的项目下载过其他版本的依赖,会导致版本冲突,这个时候需要你根据若依这个项目的依赖去下载。

    就是到 package.json 中去看哪一个依赖和你本地的版本不一样,然后下载指定版本的依赖。

b.改后端请求地址

  • 更改 vite.config.js 文件中的后台请求地址 ,34行
'/dev-api': {target: 'http://localhost:8080',// target: 'https://api.wzs.pub/mock/13',changeOrigin: true,rewrite: (p) => p.replace(/^\/dev-api/, '')
}

c.启动应用

npm run dev 启动应用,访问 http://localhost:80 就可以看到页面啦

image-20240707174438580

利用若依快速生成代码

1.导入基础表到数据库

a.表结构导入数据库. /Users/zhao/Downloads/阿里云盘/2024-Java若依框架专题课/01-基础篇/资料/02-入门案例

DROP TABLE IF EXISTS `tb_course`;CREATE TABLE `tb_course` (`id` bigint NOT NULL AUTO_INCREMENT COMMENT '课程id',`code` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_bin DEFAULT NULL COMMENT '课程编码',`subject` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_bin DEFAULT NULL COMMENT '课程学科',`name` varchar(64) CHARACTER SET utf8mb3 COLLATE utf8mb3_bin DEFAULT NULL COMMENT '课程名称',`price` int DEFAULT NULL COMMENT '价格(元)',`applicable_person` varchar(32) CHARACTER SET utf8mb3 COLLATE utf8mb3_bin DEFAULT NULL COMMENT '适用人群',`info` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_bin DEFAULT NULL COMMENT '课程介绍',`create_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',`update_time` timestamp NULL DEFAULT NULL COMMENT '更新时间',PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_bin COMMENT='课程管理';LOCK TABLES `tb_course` WRITE;INSERT INTO `tb_course` VALUES (1,'cp123456','javaEE','JavaSE基础',199,'小白学员','JavaSE基础','2024-04-20 09:57:35','2024-04-20 09:57:35'),(2,'cp123457','javaEE','JavaWeb',188,'初级开发者','JavaWeb','2024-04-20 09:57:35','2024-04-20 09:57:35'),(3,'cp123458','Python+大数据','Python入门',555,'小白学员','Python入门','2024-04-20 09:57:35','2024-04-20 09:57:35'),(4,'cp123459','Python+大数据','PythonWeb',88,'初级开发者','PythonWeb','2024-04-20 09:57:35','2024-04-20 09:57:35'),(5,'cp123460','鸿蒙应用开发','鸿蒙入门',99,'小白学员','鸿蒙入门','2024-04-20 09:57:35','2024-04-20 09:57:35'),(6,'cp123461','鸿蒙应用开发','鸿蒙商城实战',59,'初级开发者','鸿蒙商城实战','2024-04-20 09:57:35','2024-04-20 09:57:35');UNLOCK TABLES;

2.数据表单设置

a. 选定新建的表

在页面菜单栏中点击 系统工具 - -> 表单构建 - -> 代码生成 --> 导入–>查询表明点击确认

b.修改生成配置

  • 上一步骤选择确定后会列表会生成一条数据,点击编辑进入修改生成配置页面
  • 有三个字页面。1.基本信息 2.字段信息 3.生成信息 如下图设置

image-20240707093857561

image-20240707094358402

image-20240707094347963

c .下载生成的代码到本地

image-20240707094528024

d.将文件放到前后端项目中

  • 执行下载文件中的sql文件,里面是给新页面加权限的sql

  • 执行下载文件的sql,前端代码复制,api和view文件到项目中。后端代码复制 course 到 src/main/java/com/ruoyi 文件夹下(ruoyi-admin子项目) 重启后端。

e.单表增删改查完成

image-20240707175546306

结束语

以前一直想学习若依,自己也运行过项目,但是没人教还是摸索不透。毕竟自学能力还是有限的。这回黑马出教程啦。单表的增删改查不到5分钟就完事还是前后端分离的,这也太爽啦吧。之前去零跑汽车外包干过几天,他们那面就是用的若依这套东西。实在太好用了,学会了分分钟做出个系统。这个笔记是前3节的后面会一直学持续更新。有问题可以一起讨论,我组建了一个微信群大家可以加一下,还有这个项目的网盘资料我也可以分享 。私聊

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

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

相关文章

基于LoFTR_TRT项目实现LoFTR模型的trt推理与onnx推理,3060显卡下320图像30ms一组图

本博文主要记录了使用LoFTR_TRT项目将LoFTR模型导出为onnx模型,然后将onnx模型转化为trt模型。并分析了LoFTR_TRT与LoFTR的基本代码差异,但从最后图片效果来看是与官网demo基本一致的,具体可以查看上一篇博客记录。最后记录了onnx模型的使用【…

WebAssembly场景及未来

引言 从前面的文章中,我们已经了解了 WebAssembly(WASM) 的基本知识,演进历程,以及简单的使用方法。通过全面了解了WebAssembly的设计初衷和优势,我们接下来要知道在什么样的场景中我们会使用 WASM 呢&…

在门店里造绿色氧吧!康养行业也这么卷了?

拼啥不如拼健康,现在的人算是活明白了,不但中老年人这样想,年轻人也这样干。你可能不知道,现在众多健康养生门店,逐渐成了年轻人“组团养生”的好去处,也是他们吃喝玩乐之外的新兴消费趋势。 而在看得见的…

原理图设计工作平台:capture和capture CIS的区别在于有没有CIS模块

1环境:design entry CIS 2.参数设置命令options——preference(7个选项卡colors/print,grid display,miscellaneous,pan and zoom,select,text editor和board simulation) 1)颜色设置colors/p…

应急响应--网站(web)入侵篡改指南

免责声明:本文... 目录 被入侵常见现象: 首要任务: 分析思路: 演示案例: IIS&.NET-注入-基于时间配合日志分析 Apache&PHP-漏洞-基于漏洞配合日志分析 Tomcat&JSP-弱口令-基于后门配合日志分析 (推荐) Webshell 查杀-常规后门&…

R语言实战—圆形树状图

话不多说,先看最终效果: 圆形树状图是树状图的一个变型,其实都是层次聚类。 接下来看代码步骤: 首先要先安装两个包: install.packages("ggtree") install.packages("readxl") 咱就别问问什么…

go zero入门

一、goctl安装 goctl 是 go-zero 的内置脚手架,可以一键生成代码、文档、部署 k8s yaml、dockerfile 等。 # Go 1.16 及以后版本 go install github.com/zeromicro/go-zero/tools/goctllatest检查是否安装成功 $ goctl -v goctl version 1.6.6 darwin/amd64vscod…

vue2响应式原理+模拟实现v-model

效果 简述原理 配置对象传入vue实例 模板解析,遍历出所有文本节点,利用正则替换插值表达式为真实数据 data数据代理给vue实例,以后通过this.xxx访问 给每个dom节点增加观察者实例,由观察者群组管理,内部每一个键值…

sqlite 数据库 介绍

文章目录 前言一、什么是 SQLite ?二、语法三、SQLite 场景四、磁盘文件 前言 下载 目前已经出到了, Version 3.46.0 SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它是…

VMware虚拟机配置桥接网络

转载:虚拟机桥接网络配置 一、VMware三种网络连接方式 VMware提供了三种网络连接方式,VMnet0, VMnet1, Vmnet8,分别代表桥接,Host-only及NAT模式。在VMware的编辑-虚拟网络编辑器可看到对应三种连接方式的设置(如下图…

Square Root SAM论文原理

文章目录 Square Root SAM论文原理核心原理SLAM问题的3种表示贝叶斯网络因子图(Factor graph)马尔科夫随机场(Markov Random Field, MRF) SLAM最小二乘问题&线性化因式分解 factorization矩阵与图(Matrices ⇔ Graphs)因式分解&变量消元(Factori…

Kafka系列之Kafka知识超强总结

一、Kafka简介 Kafka是什么 Kafka是一种高吞吐量的分布式发布订阅消息系统(消息引擎系统),它可以处理消费者在网站中的所有动作流数据。 这种动作(网页浏览, 搜索和其他用户的行动)是在现代网络上的许多社…

14-22 剑和远方2 - 深度神经网络中的学习机制

概论 在第一部分中,我们深入探讨了人工智能的兴衰简史以及推动人工智能发展的努力。我们研究了一个简单的感知器,以了解其组件以及简单的 ANN 如何处理数据和权重层。在简单的 ANN 中,不会对数据执行特定操作。ANN 中的激活函数是一个线性函…

flask使用定时任务flask_apscheduler(APScheduler)

Flask-APScheduler描述: Flask-APScheduler 是一个 Flask 扩展,增加了对 APScheduler 的支持。 APScheduler 有三个内置的调度系统可供您使用: Cron 式调度(可选开始/结束时间) 基于间隔的执行(以偶数间隔运行作业…

移动校园(7)ii:uniapp响应拦截器处理token,以及微信小程序报错当前页面正在处于跳转状态,请稍后再进行跳转....

依据昨天的写完,在token过期之后,再次调用接口,会触发后端拦截,扔进全局错误处理中间件 前端说明提示都没有,只有一个这个,现在优化一下,再写一个类似全局后置守卫,当状态码是401的时…

RAID 冗余磁盘阵列

RAID也是Linux操作系统中管理磁盘的一种方式。 只有Linux操作系统才支持LVM的磁盘管理方式。 而RAID是一种通用的管理磁盘的技术,使用于多种操作系统。 优势:提升数据的读写速度,提升数据的可靠性。具体实现哪什么功能,要看你所…

LVGL移植与VS模拟器使用

一、移植文件介绍 二、移植部分 第一步:创建LVGL文件夹 第二步: 构造LVGL文件夹:LVGL - GUI - lvgl - 第三步:添加文件 3.1 从examples中添加2个.c文件 3.2 从src中添加文件 draw文件 extra文件 第四步: 三、Ke…

Linux系统安装软件包的方法rpm和yum详解

起因: 本篇文章是记录学习Centos7的历程 关于rpm 常见命令 1)查看已经安装的软件包 rpm -q 软件包名 2)查看文件的相关信息 rpm -qi 软件包名 3)查看软件包的依赖关系 就是说要想安装这个软件包,就必须把一些前…

三级_网络技术_04_中小型网络系统总体规划与设计

1.下列关于路由器技术特征的描述中,正确的是()。 吞吐量是指路由器的路由表容量 背板能力决定了路由器的吞吐量 语音、视频业务对延时抖动要求较低 突发处理能力是以最小帧间隔值来衡量的 2.下列关于路由器技术特征的描述中,正确的是()。 路由器的…

springboot公寓租赁系统-计算机毕业设计源码03822

摘要 1 绪论 1.1 研究背景与意义 1.2选题背景 1.3论文结构与章节安排 2 公寓租赁系统系统分析 2.1 可行性分析 2.1.1 技术可行性分析 2.1.2 经济可行性分析 2.1.3 法律可行性分析 2.2 系统功能分析 2.2.1 功能性分析 2.2.2 非功能性分析 2.3 系统用例分析 2.4 系…