手把手教你写项目之中小学微课学习系统(一):技术栈+架构设计

阅读前请先下载项目源码,边读边看源码以加深理解和实操,
源码地址已放于文章末尾!

效果预览:
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

技术栈“全家桶”预览

“工欲善其事,必先利其器”。在正式开干前,咱们得先亮亮兵器。这个项目我会带着大家使用目前业界非常主流的一套“全家桶”技术来实现,保证大家学完就能直接用在自己的毕业设计或者公司的商业项目里。

后端技术栈:

  • Spring Boot: 这可是Java后端开发的“当红炸子鸡”,简化了Spring应用的初始搭建以及开发过程,咱们用它来快速构建后端服务。
  • MySQL: 最流行的关系型数据库,稳定、可靠,群众基础好。
  • MyBatis-Plus: 在MyBatis的基础上做了增强,让数据库操作“丝般顺滑”,能极大地提高我们的开发效率。
  • JWT (JSON Web Token): 用于用户认证和授权,就像是发给用户的“通行令牌”,安全又高效。

前端技术栈:

  • Vue.js: 一套用于构建用户界面的渐进式框架。咱们的项目虽然看起来有点“复古”,但我们会用Vue的核心思想来驱动它。
  • Axios: 一个基于 promise 的 HTTP 库,用来和我们的后端API“愉快地聊天”。
  • HTML/CSS/JavaScript: 前端三剑客,这个就不用多说了,基本功。

下面,我用一张图来展示下咱们项目的整体架构,让大家有个更直观的认识:

数据与服务
后端
前端
数据库 (MySQL)
视频云存储 (例如:七牛云)
后端API服务 (Spring Boot)
前端应用 (Vue.js)
用户/浏览器

这张图是不是一下子就清晰了?用户通过浏览器访问我们的Vue前端页面,前端页面通过Axios调用后端的Spring Boot API,后端API负责处理业务逻辑,比如从MySQL里读写数据,或者从云存储服务获取视频地址,最后把结果返回给前端展示。一个完整的请求闭环就完成了!

01-后端起手式-Spring-Boot项目初始化

很多刚入门的小伙伴一听到“配置”、“环境”就头大,感觉比写代码还难。别怕,Spring Boot就像一个贴心的“管家”,已经把大部分繁琐的工作都帮我们做好了。咱们要做的,就是像点菜一样,勾选我们需要的“功能套餐”,然后一键生成项目。这个神奇的“点菜”网站,就是 Spring Initializr

什么是Spring Initializr?

你可以把它想象成一个“代码界的自动化厨房”。你想做什么菜(项目),需要哪些调料(依赖),告诉它,它就“duang”一下,把切好、配好的原材料(项目骨架)直接送到你面前。你只需要专注于“炒菜”(写业务代码)这最核心的步骤就行了。是不是很酷?

来,跟我一起操作,打开你的浏览器,输入这个神奇的网址:start.spring.io

  1. 项目基本信息(Project Metadata):

    • Project: 选择 Maven。(Maven和Gradle是Java世界的两大“包工头”,负责管理项目依赖和打包,Maven更经典,我们选它。)
    • Language: 选择 Java
    • Spring Boot: 选择一个比较新的稳定版,比如 2.7.x 或者 3.x.x 系列。(版本别太老也别太新,稳定压倒一切!)
    • Group: 项目组的唯一标识,一般是公司域名的倒写,比如 com.example。咱们就叫它 com.weke 吧。
    • Artifact: 项目的唯一标识,可以理解为项目名,咱们叫它 learning-system
    • Packaging: 打包方式,选 Jar。(Spring Boot内置了Tomcat服务器,打成Jar包就能直接跑,非常方便。)
    • Java: 选择你电脑上安装的Java版本,比如 1117
  2. 添加“调料包”(Dependencies):
    这是最关键的一步!我们需要在右边的 Dependencies 区域点击 ADD DEPENDENCIES 按钮,添加我们项目初期需要的核心模块。暂时先加这几个:

    • Spring Web: 这是构建Web应用的核心,包括了RESTful API、Spring MVC等。加上它,我们的项目才能“上网”。
    • MySQL Driver: 我们要连接MySQL数据库,必须得有这个“驱动程序”当中间人。
    • MyBatis-Plus: 前面介绍过的,超级好用的数据库操作框架,能帮我们少写很多SQL。
    • Lombok: 一个能让我们少写很多get/set等样板代码的“偷懒”神器,谁用谁知道!

选好之后,界面应该是这个样子的:

核心依赖
项目配置
Spring Web
MySQL Driver
MyBatis-Plus
Lombok
Project: Maven
Language: Java
Spring Boot: 2.7.x
Group: com.weke
Artifact: learning-system
点击 GENERATE
下载 a.zip 压缩包

生成并导入项目

所有选项都确认无误后,勇敢地点击左下角的 GENERATE 按钮!浏览器会下载一个名为 learning-system.zip 的压缩包。

恭喜你!你已经完成了万里长征的第一步!

接下来,把这个压缩包解压到你喜欢的工作目录下,然后用你的IDE(推荐使用 IntelliJ IDEA)打开这个项目。IDEA会自动识别这是一个Maven项目,并开始下载我们刚才选择的那些依赖包。你只需要稍等片刻,泡杯茶,看着它表演就行。

项目导入成功后,你会看到这样的目录结构:

/learning-system
|-- .mvn/
|-- src/
|   |-- main/
|   |   |-- java/
|   |   |   `-- com/
|   |   |       `-- weke/
|   |   |           `-- learningsystem/
|   |   |               `-- LearningSystemApplication.java  <-- 启动类
|   |   `-- resources/
|   |       |-- static/
|   |       |-- templates/
|   |       `-- application.properties  <-- 配置文件
|   `-- test/
|-- .gitignore
|-- mvnw
|-- mvnw.cmd
`-- pom.xml  <-- Maven的核心配置文件

这里面 LearningSystemApplication.java 是我们整个程序的入口,application.properties 是我们应用的“总开关”和“配置中心”,而 pom.xml 则记录了我们项目的所有“装备”(依赖)。

跑起来,见证奇迹!

现在,什么代码都别写,直接找到 LearningSystemApplication.java 文件,点击main方法旁边的绿色小三角,选择 Run

如果你的控制台最后输出了类似下面这样一行日志,并且没有报错:

... Tomcat started on port(s): 8080 (http) with context path ''
... Started LearningSystemApplication in X.XXX seconds (JVM running for Y.YYY)

那么,恭喜你!你已经成功启动了一个Java后端服务!

虽然它现在啥也干不了,就像一个刚出生的婴儿,但它的心脏已经开始跳动了!这种从无到有的感觉,是不是特别有成就感?

好了,今天的“起手式”就到这里。我们成功地搭建了项目的骨架,并且让它“活”了起来。

下一期预告: “万丈高楼平地起”,地基得打牢。下一章,咱们就来为我们的微课系统设计数据库表结构,为后续的数据存储做好万全的准备。咱们不见不散!

源码下载地址:
https://download.youkuaiyun.com/download/THMAIL/91753658

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

THMAIL

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值