新项目搞完啦!!!
大家好,我是鱼皮。
经过了 7 场直播,总时长近 20 小时,我在 自己的编程导航 的第 5 个 全程直播开发 的项目 —— 智能 BI 项目,完结啦!

我在这里对该项目做一个简单的总结,希望让更多需要它的同学看到,把它变成自己的项目~
项目简介
这次做的是一个顺应潮流的项目, 基于 React + Spring Boot + MQ + AIGC 的 智能数据分析平台 。
区别于传统 BI,用户只需要导入原始数据集、并输入分析诉求,就能自动生成可视化图表及分析结论,实现数据分析的降本增效。
BI:即商业智能,可以简单理解为数据分析和可视化系统
AIGC:指用 AI 生成内容
智能分析页面:

我的图表页面:

支持异步分析:

项目架构图:

感兴趣的同学可以 免费试看 第一期项目回放:https://www.bilibili.com/video/BV1Cg4y1G7oy
项目特点和收获
该项目选题非常 新颖 ,不同于泛滥的管理系统、博客、商城,本项目是结合当下最火的 AIGC 技术 + 企业级 BI 业务场景的综合实战,紧跟时代潮流!
项目中会带大家学习和实战:前后端高效开发方式、AIGC 应用开发、AI 提问技巧、系统优化、分布式限流、线程池、异步化、消息队列等一系列 重点 知识。
鱼皮 从 0 到 1 全程直播无剪辑 地带大家开发完成项目,总课程时长近 20 小时 !从需求分析、技术选型、系统设计、项目初始化、前后端开发,每个环节我都 从理论到实践 给大家讲的明明白白、每个细节都不放过!
除了学做项目之外,还能学会很多 思考问题、对比方案 的方法,提升排查问题、自主解决 Bug 的能力。
还能获取到鱼皮的 万用后端项目模板,学习到最方便的全栈项目开发方式,熟练后 几分钟开发一个新功能 轻轻松松!
本项目适合的同学
本项目同时适合前端和后端,但是会更侧重后端。
如果你是后端,已经学习过 Java Web 开发技术,希望做一个新颖的、有亮点的、写在简历上加分的项目,学习热门的 AIGC 应用开发、提升自己的编程和架构设计能力,那么非常欢迎来学习!
如果你是前端,最好已经学习过 Vue 或 React 框架,可以通过本项目学习到快速开发前端项目的技巧,并且通过保姆级的入门实战学会一些后端技术。
再介绍下这个项目用到的技术,都是主流的~
技术选型(全栈项目)
前端
- React 18
- Ant Design Pro 5.x 脚手架
- Umi 4 前端框架
- Ant Design 组件库
- Echarts 可视化库
- OpenAPI 前端代码生成
后端
- Java Spring Boot(万用后端模板)
- MySQL 数据库
- MyBatis-Plus 及 MyBatis X 自动生成
- Redis + Redisson 限流
- RabbitMQ 消息队列
- 鱼聪明 AI SDK(AI 能力)
- JDK 线程池及异步化
- Easy Excel 表格数据处理
- Swagger + Knife4j 接口文档生成
- Hutool、Apache Common Utils 等工具库
再列举下项目的大纲,这只是其中让我印象比较深刻的关键环节,直播过程中还讲了很多平时大家自己看视频根本学不到的做项目经验和编码技巧,比如:怎么又稳又快地自学一个新技术。
项目大纲
- 项目介绍和计划
- 需求分析
- 技术选型
- 业务流程和系统架构
- 前端项目初始化
- Ant Design Pro 项目搭建
- 初始化项目精简
- 后端项目初始化
- Spring Boot 万用模板使用
- 库表设计
- 基础代码生成
- 前端基础开发联调
- OpenAPI 代码生成
- 前端模板代码优化
- 登录功能开发
- 智能分析业务开发
- 业务流程梳理
- AI 助手使用
- 原始数据压缩
- AIGC 入门实战
- AIGC 提问技巧
- 3 种 AI 调用方式
- 后端接口开发
- 图表管理功能
- 前端开发
- 系统分析及优化
- 文件安全性
- 数据存储 - 分库分表
- 限流 - 4 种限流算法
- 限流 - Redisson 分布式限流实战
- 系统异步化改造
- 异步化业务流程
- 线程池精讲(入门 + 原理 + 实战 + 面试)
- 异步化改造 - 前端开发
- 异步化改造 - 后端开发
- 优化点扩展
- 系统现状分析
- 消息队列
- 基础概念
- 应用场景
- 主流队列技术选型
- RabbitMQ 入门实战
- AMQP 协议和基础概念
- 5 种队列模型理论及实战
- 核心特性 - 消息过期
- 核心特性 - 消息确认
- 核心特性 - 死信队列
- 客户端介绍及 demo 开发
- BI 项目分布式队列改造
项目资料
我们整理好了项目完整源代码、详细的直播笔记和直播大纲,便于大家交流学习。

最关键的是,鱼皮已经整理好了这个项目的简历写法、亮点和扩展思路(30 个左右),做完项目后就能直接填满简历!
因为项目是在我的 编程导航知识星球 内直播做的,所以自然不能给大家免费发放啦。(要不然又成为一个泛滥的项目了)
大家如果对这个项目感兴趣,欢迎加入编程导航,加入后可以跟着后续的直播做新项目、随时观看 超清完整的 全部直播回放 、完整的项目笔记以及踩坑指南、最新的项目源码等。
最关键的是:做项目的过程中,有任何问题,都可以和大家一起交流或者 直接向鱼皮本人提问 !
已经有不少小伙伴学起来了,还有很多大家自发整理的笔记。不得不说,做项目真的给了很多同学一个坚持学习的目标,大家的动力也更足了!

关于 编程导航知识星球 ,我已经运营很久了,就不过多地介绍了,感兴趣的同学可以访问yupi.icu加入体验,三天内不满意可全额退款~
相关文章:
新项目搞完啦!!!
大家好,我是鱼皮。 经过了 7 场直播,总时长近 20 小时,我在 自己的编程导航 的第 5 个 全程直播开发 的项目 —— 智能 BI 项目,完结啦! 我在这里对该项目做一个简单的总结,希望让更多需要它的同学看到&am…...
分享一个可交互的小场景(二)
先看效果: 可互动的小场景 再看代码: JS部分 <script>var rotateDiv document.getElementById(rot);var rotateIcons document.getElementById(rot-icons);var clickRotateDiv document.getElementById(click-rot);var angle 0;clickRotateDi…...
2.5 DNS 应用 -- 1. DNS 概述
2.5 DNS 应用 -- 1. DNS 概述 DNS:Domain Name SystemDNS分布式层次式数据库DNS根域名服务器TLD和权威域名解析服务器本地域名解析服务器 DNS 查询迭代查询递归查询 DNS记录缓存和更新 DNS:Domain Name System Internet上主机/路由器的识别问题 IP地址域…...
基于STM32麦克风阵列音频信号处理系统设计
v hezkz17进数字音频系统研究开发交流答疑 附录: ADAU1452音频处理系统...
《重构》:Extract Class and Inline Class
hey,gays lets go on to refator those sh!t . i fork a rep, this the link GitHub - TIMPICKLE/refator-code: 重构 - 改善既有代码的设计 all right, lets see the genel description. 提取类 对立:内联类 目的:将大类分成小类 场景&a…...
腾讯云对象存储联合DataBend云数仓打通数据湖和数据仓库
随着数字化进程不断深入,数据呈大规模、多样性的爆发式增长。为满足更多样、更复杂的业务数据处理分析的诉求,湖仓一体应运而生。在Gartner发布的《Hype Cycle for Data Management 2021》中,湖仓一体(Lake house)首次…...
ExceptionLess windows部署。
前言 windows部署 1、一个api项目,里面包含了所有api。 2、一个elasticsearch项目,用来存储相关数据。 3、一个UI项目,也就是查看异常、设置新异常邮件通知等操作的后台。 异常在客户端提交的代码原理:一个异常被提交,…...
使用python实现1DCNN-GRU回归预测
要实现1DCNN-GRU进行回归预测,您可以使用以下Python代码作为参考: 首先,导入所需的库: import numpy as np import tensorflow as tf from tensorflow.keras.layers import Conv1D, MaxPooling1D, GlobalAveragePooling1D, GRU,…...
移动端数据可视化设计
在做APP设计的时候,难免会遇到一些需要展示数据的场景。使用传统的表格和文档展示数据不仅难看,也影响用户理解数据的含义。而数据可视化设计能将数据以更加直观的方式展现出来,使数据更加客观、更有说服力。 在移动应用中,数据可…...
Linux文件系统概述
本文已收录至《Linux知识与编程》专栏! 作者:ARMCSKGT 演示环境:CentOS 7 文件系统概述 前言正文文件与磁盘磁盘介绍与机械硬盘机械硬盘基础结构机械硬盘数据存储与管理 文件操作的细节创建文件访问文件删除文件恢复文件其他情况 最后 前言 …...
go专业数据结构与算法
go语言之专业数据结构与算法 2.数组概念 3.golang实现数组结构 4.golang实现数组迭代器 5.数组栈的高级实现 6.栈模拟低级递归 7.斐波那契数列栈模拟递归 8.递归实现文件夹遍历 9.栈模拟文件递归 10.层级展示文件夹 11.数组队列的实现 12.队列实现遍历文件夹 13.循环队列 14.链…...
Hive on Spark的小文件设置参数
Hive on Spark的小文件设置参数 参数调优 了解完了Spark作业运行的基本原理之后,对资源相关的参数就容易理解了。所谓的Spark资源参数调优,其实主要就是对Spark运行过程中各个使用资源的地方,通过调节各种参数,来优化资源使用的效…...
高级SQL语句
目录 MySQL 高级(进阶) SQL 语句函数数学函数:聚合函数字符串函数: 连接查询inner join(内连接):left join(左连接):right join(右连接): CREATE VIEW(视图)UNION(联集)C…...
IDE /skipping incompatible xxx_d.dll when searching for -lxxx_d
文章目录 概述场景复现用以测试的代码编译器位数不匹配导致?保持编译器类型一致再验证编译器位数的影响MingW下调用OS的库咋不告警?以mingW下使用winSocket为例MingW下网络编程的头文件分析该环境下链接的ws2_32库文件在哪里?mingW为啥可以兼容window下的动态库 概…...
C语言学习准备-编辑器选择
今天继续给大家更新C语言经典案例 今天的案例会比昨天稍微有一些难度,但是同时还是非常经典的案例 本来是想给大家继续更新C语言经典案例,但是有朋友反应C语言编辑器的选择,刚好我自己也是想更换一下C语言的编辑器,跟大家分享一下…...
微信为什么使用 SQLite 保存聊天记录?
概要 SQLite 是一个被大家低估的数据库,但有些人认为它是一个不适合生产环境使用的玩具数据库。事实上,SQLite 是一个非常可靠的数据库,它可以处理 TB 级的数据,但它没有网络层。接下来,本文将与大家共同探讨 SQLite 在…...
VB串口通讯方式解释
目前,Visual Basic (简称VB) 已成为WINDOWS 系统开发的主要语言,以其高效、简单易学及功能强大的特点越来越为广大程序设计人员及用户所青睐。VB 支持面向对象的程序设计,具有结构化的事件驱动编程模式并可以使用无限扩增的控件。在VB 应用程序中可以方便地调用WINDOWS API函数…...
Mybatis-Plus不能更新对象字段为空值问题解决
问题描述: 在使用Mybatis-Plus调用updateById方法进行数据更新默认情况下是不能更新空值字段的,而在实际开发过程中,往往会遇到需要将字段值更新为空值的情况,该如何解决呢? 原因分析: Mybatis-Plus中字…...
d3dx9_43.dll丢失怎么解决
d3dx9_43.dll丢失的影响 当我们在运行某些需要DirectX 9支持的程序时,如果系统中缺少d3dx9_43.dll文件,就会出现错误提示,导致程序无法正常启动。这个错误提示通常会类似于“找不到d3dx9_43.dll”或“d3dx9_43.dll不存在”。 打开电脑浏览器…...
【花雕】全国青少年机器人技术一级考试备考实操搭建手册8
随着科技的不断进步,机器人技术已经成为了一个重要的领域。在这个领域中,机械结构是机器人设计中至关重要的一部分,它决定了机器人的形态、运动方式和工作效率。对于青少年机器人爱好者来说,了解机械结构的基础知识,掌…...
【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型
摘要 拍照搜题系统采用“三层管道(多模态 OCR → 语义检索 → 答案渲染)、两级检索(倒排 BM25 向量 HNSW)并以大语言模型兜底”的整体框架: 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后,分别用…...
盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来
一、破局:PCB行业的时代之问 在数字经济蓬勃发展的浪潮中,PCB(印制电路板)作为 “电子产品之母”,其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透,PCB行业面临着前所未有的挑战与机遇。产品迭代…...
多场景 OkHttpClient 管理器 - Android 网络通信解决方案
下面是一个完整的 Android 实现,展示如何创建和管理多个 OkHttpClient 实例,分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...
Qt Widget类解析与代码注释
#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//解释这串代码,写上注释 当然可以!这段代码是 Qt …...
2024年赣州旅游投资集团社会招聘笔试真
2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...
Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务
通过akshare库,获取股票数据,并生成TabPFN这个模型 可以识别、处理的格式,写一个完整的预处理示例,并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务,进行预测并输…...
2.Vue编写一个app
1.src中重要的组成 1.1main.ts // 引入createApp用于创建应用 import { createApp } from "vue"; // 引用App根组件 import App from ./App.vue;createApp(App).mount(#app)1.2 App.vue 其中要写三种标签 <template> <!--html--> </template>…...
家政维修平台实战20:权限设计
目录 1 获取工人信息2 搭建工人入口3 权限判断总结 目前我们已经搭建好了基础的用户体系,主要是分成几个表,用户表我们是记录用户的基础信息,包括手机、昵称、头像。而工人和员工各有各的表。那么就有一个问题,不同的角色…...
【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)
升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点,但无自动故障转移能力,Master宕机后需人工切换,期间消息可能无法读取。Slave仅存储数据,无法主动升级为Master响应请求ÿ…...
关于 WASM:1. WASM 基础原理
一、WASM 简介 1.1 WebAssembly 是什么? WebAssembly(WASM) 是一种能在现代浏览器中高效运行的二进制指令格式,它不是传统的编程语言,而是一种 低级字节码格式,可由高级语言(如 C、C、Rust&am…...
