推荐一款基于 SpringBoot + Vue 的前后端分离实战项目!技术主流,文档很全!

往期热门文章:

 
1、告别丑陋判空,一个Optional类就能搞定!
2、慎用BeanUtils,性能真的拉跨!
3、千万不要把 Request 传递到异步线程里面!有坑!
4、新来的CTO规定所有接口都用POST请求...
5、Java枚举意外触发了Mybatis Plus的BUG

最近无意间发现了一个有意思的开源项目,基于 SpringBoot + Vue实现,技术栈很主流,文档也很全,这里给大家分享一下。

介绍

这个项目的名字叫做 AJ-Report ,是 Gitee 上的一个 GVIP 项目。

4f8b78555de4a98c64e099a6cec1db68.png

这是一个开源免费的拖拽编辑的可视化设计工具,使用这个项目三步即可快速完成大屏开发。并且,这个项目支持多种数据源以及多种样式的图标拖拽式设计。

6bd722dd74a7543615160b141a270907.png

我们直接可视化拖拽编辑内置的组件来进行大屏设计,具体操作的效果过如下:

2cfcca6a65d37649bdb0d46539518bb7.gif

这个项目的技术栈是什么样的呢?

  • 项目的后端基于 Spring Boot + MyBatis-plus(MyBatis 增强版)+Flyway[1](数据库版本管理和迁移工具),都是业界目前比较主流的技术。

  • 项目的前端基于 Vue 全家桶+Element(桌面组件库)+Avue(采用 Element 框架低代码前端框架,它使用 JSON 配置来生成页面,可以减少页面开发工作量,极大提升效率)。

都是比较主流的技术,比较适合拿来学习。

99619f900447e1c5fe62353fa239d2cf.png

更多有关项目的介绍,你可以通过其项目主页或者官方文档来获取:

  • 项目地址:https://gitee.com/anji-plus/report

  • 在线文档 :https://report.anji-plus.com/report-doc/

另外,你可以通过在电脑端在线体验这个过程,在线体验地址:https://report.anji-plus.com/index.html (体验账号:guest 密码:guest)。

96ca30cb88283719fe1f40a4cdb27f99.png

当然了,如果你想本地搭建环境来学习或者体验这个项目的话,也是比较简单的。

项目环境搭建

开始搭建环境之前,首先需要通过 Git 将项目克隆到本地。

git clone https://gitee.com/anji-plus/report.git

项目结构概览

使用 ll 命令查看一下文件夹中有什么。

ll
total 72
-rw-r--r--   1 guide  staff    11K  8 12 15:22 LICENSE
-rw-r--r--   1 guide  staff   1.9K  8 12 15:22 README.en.md
-rw-r--r--   1 guide  staff   6.3K  8 12 15:22 README.md
-rw-r--r--   1 guide  staff   996B  8 12 15:22 build.sh
-rw-r--r--   1 guide  staff   732B  8 12 15:22 derby.log
drwxr-xr-x   6 guide  staff   192B  8 12 15:22 doc
-rw-r--r--   1 guide  staff   559B  8 12 15:22 pom.xml
drwxr-xr-x   6 guide  staff   192B  8 12 15:22 report-core
drwxr-xr-x  15 guide  staff   480B  8 12 15:22 report-ui

主要关注下面这四个文件夹即可:

  • report-core : 后端项目

  • report-ui : 前端项目

  • doc :项目在线文档源码

  • build.sh : 部署项目的脚本

后端环境搭建

使用 IDEA 或者其他工具打开后端项目 report-core

cd report-core
idea .

找到 bootstrap-dev.yml ,修改数据库配置。将图中关于 MySQL 的连接配置信息换成你使用的 IP

2a5cef863d86472443e338e44be675a4.png

如果要使用上传功能的,还需要修改下面这两个配置。

c538a7da4bfb287d93cc49e8be17f677.png

这些配置信息修改完成之后,我们就可以启动后端项目了!下图是我本地启动后的效果。

d747dbc962523db77af2b9f7c3451b91.png

前端环境搭建

前端项目本地环境启动就比较简单了。不过,这一步需要你的本地有 Node 开发环境。

如果你不知道如何搭建 Node 开发环境的话,Windows 用户可以看 Microsoft 的**《直接在 Windows 上设置 Node.js 开发环境》**[2]这篇文章,介绍的非常详细。

845c59cd7e096f510088703225eb71b8.png

Mac 用户的话就比较简单了,推荐直接使用 Homebrew 安装即可:brew install nodeNPM 已经默认包含在了 Node 环境中)。

安装完成之后,建议你测试一下本地是否成功安装 NodeNPM

  • Node : node -v

  • NPM : npm -v

5fda02ae340474adc65d0e69c841f0d2.png

Node 环境搭建好了之后,我们就开始正式搭建本地 Web 环境了!

Web 端代码在 uexam/source/vue 下,我们需要首先进入这个目录,然后分别对 xzs-admin (管理端) 和 xzs-student (学生端)执行下面两个命令。

1.下载相关依赖

npm install

2.启动项目

npm start

直接查看 package.json 下的相关脚本,就知道前端项目是如何启动和打包部署的了。

c61b574e807c296f097b1d851e8f862f.png

使用体验

1、配置数据源。

这里可以支持多数据源,目前内置 mysql, elasticsearch sql, kudu impala, http 四种。

6297d4452ed4a7a6907b343446d90b4e.png

2、写 SQL 配置数据集。

数据源配置完成之后,我们即可使用数据源,这里以 mysql 数据源为例。

6984090c3a736a62e6da97ecc247ea70.png

3、拖拽生成大屏。

新增大屏设计

1022414c8e0e0070bbb58de9a87c25be.png

通过拖拽的方式来设计大屏

25c13ac2e847529ebecc3d345afbaf9f.png0ce144d48a765830c2f09f9ad9709cde.pngd863a2ae257630d11712b0bedbcb83ac.png0477e4fe1673ac1f9829eed90c700ef2.png7d86390f295a35a0a918103771d70bc6.png

参考资料

  • [1]Flyway: https://flywaydb.org/

  • [2]《直接在 Windows 上设置 Node.js 开发环境》: https://docs.microsoft.com/zh-cn/windows/dev-environment/javascript/nodejs-on-windows

往期热门文章:
1、IntelliJ IDEA终于支持对Redis 的可视化窗口操作了,真香!
2、ChatGPT能接入微信了!
3、Java 反射慢?它到底慢在哪?
4、当我去了不到 20 人的 IT 公司后。。。
5、GitHub 被超火的 ChatGPT 霸榜!
6、Java使用 try catch会影响性能?
7、Java使用 try catch会影响性能?
8、原来count(*)是接口性能差的真凶!
9、大公司病了,这也太形象了吧!!!
10、全球最大资源站创始人被抓,但网站还会继续活下去

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

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

相关文章

Vue 之 mixins 和 provide/inject

一、mixins 1、简介 ​ mixins 又称 混入,是指将一些可复用的代码(JS、生命周期钩子函数等等)抽离出来,定义成mixins模块,然后混入到多个组件中,从而实现组件间的逻辑代码共享,减少重复代码。…

程序员必备软件,插件,idea常用快捷键--持续更新

1.好用的软件 1.1 截图软件--snipaste 这个软件最好用的就是他可以把截图置顶 1.2 文档查看软件--sublime 他支持多种格式的文件查询,关键是有标第几行 1.3 记笔记软件--语雀 md也在用,为什么选择语雀,因为他支持网页,电脑端,安卓端,苹果端,主要是能放图片 1.4 数据库软件 na…

调取Https接口遇到的坑及解决方式

目录 踩坑的过程 背景 前提 开始排查问题原因 结论 关于Https协议的接口 Java实现调取Https接口方式 1.RestTemplate跳过验证 2.校验方式 3.Forest框架调取接口 参考文档 踩坑的过程 背景 现在有一个平台提供的接口,是Https形式的,但是呢&am…

【NLP】LSTM 唐诗生成器

目标:使用 github 唐诗宋词数据库的 json 数据,训练一共唐诗生成器 数据源:https://github.com/chinese-poetry/chinese-poetry 查看原始数据格式 原始数据包含 作者、正文、标题、id四个部分,这里仅仅使用诗词正文进行训练 …

大力推广 Bard 的谷歌,警告自家员工:慎用 AI 聊天机器人!

整理 | 郑丽媛 出品 | CSDN(ID:CSDNnews) 有了去年 ChatGPT 的领跑后,此后各家科技巨头都陆续在 AI 领域积极布局,其中谷歌的 Bard 更被业界视作 ChatGPT 的有力竞争者。 因此很难想到,Alphabet&#xff0c…

GPT-4测评,大家先别急,图片输入还没来

昨天GPT-4朋友圈刷屏,我更新了一篇小文章,极简罗列GPT-4的一些情报: 1 ChatGPT Plus用户才可试用GPT-4 2 试用阶段每四小时最多100条信息 3 知识库还是2021年 4 上下文长度为8192个token 5 是多模态,但是图片输入仍处于研究预…

chatgpt赋能Python-pythonlabels

Python Labels: 了解Python中标签的作用 Python是一种流行的编程语言,它有着广泛的应用场景。在Python中,标签(Labels)是一个非常重要的概念,可以帮助开发者更好地组织代码和进行调试。本文将介绍Python中的标签&…

dede采集插件自动采集文章图片自定义接口

为什么要用Dede采集插件?如何利用免费Dede采集插件让网站收录以及关键词排名。我们知道,网站结构是seo优化过程中不可忽视的一个非常重要的环节,网站结构分为物理结构和逻辑结构,物理结构一般指的是虚拟空间中很多目录和文件的摆放…

呼吁!少用ChatGPT,多支持开源!

【深度学习革命 - 从历史到未来 Genius Makers: The Mavericks Who Brought AI to Google, Facebook, and the World】这本书里详述了为何西方人工智能界(AI)对于 AI 如此戒慎恐惧,深忧它被少数白人(绝大多数为男性)统…

ChatGPT对未来教育的影响:或将成为奇点

ChatGPT横空出世,不难想象,不久的将来,公司经理只要按一下按钮或者对语音机器人发个指令,就可以将一个粗略的文档转换成优雅的演示文稿,而无需劳烦公司文秘。这无疑颠覆了我们早已熟稔于心的工作场景。 不论是这一次人…

“慎用ChatGPT”!

中国财经报 2023-04-11 4月10日,中国支付清算协会网站发布“关于支付行业从业人员谨慎使用ChatGPT等工具的倡议”,全文如下: 近期,ChatGPT等工具引起各方广泛关注,已有部分企业员工使用ChatGPT等工具开展工作。但是&am…

带你系统的认识CHATGPT

近期CHATGPT火遍全球,各行各业的顶尖人才都在讨论着CHATGPT的发展趋势,中产们都研究着怎么使用CHATGPT产生更大的价值 今天我带大家系统的认识一下CHATGPT. 要说到CHATGPT,我们不得不先介绍一下OPENAI,它是一家人工智能研发公司,CHATGPT是它旗下的产品. OPENAI目前开放的产品有…

与chatGPT神聊,引领你深入浅出系统调用

在操作系统的教学中,系统调用的作用不言而喻,但是,对系统调用常常是雾里看花,似乎明白,又难以真正的触及,即使在代码中调用了系统调用,比如调用fork()创建进程&#xff0…

从零开始开发自己的chatgpt平台 之 SSE(Server-Sent Events)客户端和服务端

提示:如果你认为本文对你有帮助,请点一下关注,后面会有更多人工智能方面的文章。 文章目录 前言一、SSE是什么?二、SSE服务端三、客户端四、SSE双向通信总结 如果有问题可以联系我**:https://gitee.com/xiaoyuren/gpt3…

中国院士称“我国已具备 ChatGPT 发展基础”

中国工程院院士王坚称「我国已具备支撑 ChatGPT 发展的算力基础」,“解好电力行业的关键问题,有可能会引领下一波AI浪潮。”中国工程院院士、阿里云icon创始人王坚2月17日在南方电网总部参加第四届电力调度AI应用大赛时表示。 我认为要开发出chatGPT这样…

Prompt 用法大全!让 ChatGPT 更智能的六种策略(中)

如果遵循以下六种策略来构建 Prompt 提示词,在和 ChatGPT 对话中我们将获得更好、更符合我们要求的回答。 这些策略,后几种更适合在编程调用 ChatGPT API 时使用,不过也适用直接和 ChatGPT 对话,让它更好的理解我们的意图。 1、写…

ChatGPT迎来华人产品负责人Peter Deng

6月1日,ChatGPT新任产品负责人Peter Deng在领英发布动态,宣布正式以“消费者产品副总裁”的身份加入了OpenAI,他写道,“我很高兴能够领导ChatGPT背后杰出的产品、设计和工程团队,目标是让AI对每个人都有用、易获得且有…

第十四届大学生服务外包创新创业大赛总结和心得

前言 比赛已经过去一个多月了,但是当时在为数不多的时间里学东西和完成项目的场景还历历在目,最后我们也获得了省三等的成绩,这对我们五个大一的学生来说已经非常满足了。 比赛介绍 相关连接:服务外包网址 比赛内容&#xff1a…

年薪高达 267 万元,ChatGPT 催生高薪职业,无需编程背景

整理 | 朱珂欣 出品 | CSDN程序人生(ID:coder_life) ChatGPT 的兴起,催生了一个“与众不同”的新职业 —— prompt engineer (提示工程师)。 主要职责是负责为 AI 聊天机器人生成的文本、图片、音频等内…

【关于ChatGPT的30个问题】25、ChatGPT的性能和效果如何?/ By 禅与计算机程序设计艺术

25、ChatGPT的性能和效果如何? 目录 25、ChatGPT的性能和效果如何? ChatGPT的性能涉及的方面 语言模型