Skip to main content

01小节:从零到一创建SpringBoot项目

作者:程序员马丁

在线博客:https://nageoffer.com

note

Ragent AI —— 从 0 到 1 纯手工打造企业级 Agentic RAG,拒绝 Demo 玩具!AI 时代,助你拿个offer。

从零到一创建SpringBoot项目&初始化通用配置讲解,元数据信息:

©版权所有 - 拿个offer-开源&项目实战星球专属学习项目,依据《中华人民共和国著作权法实施条例》和《知识星球产权保护》,严禁未经本项目原作者明确书面授权擅自分享至 GitHub、Gitee 等任何开放平台。违者将面临法律追究。


内容摘要:说明 IDEA 和 Maven 的版本,分支的创建过程,以及我们 framework 中默认初始化内容。

课程目录如下所示:

  • 从零到一创建项目
  • 初始化通用配置

从零到一创建项目​

1. IDEA 版本​

如果大家没有破解版的 IDEA 2023 及以上,社区版本也未尝不可。社区版本和默认版本在一些功能和插件支持上会有阉割,但是实测下来问题并不大。

IDEA 下载地址:https://www.jetbrains.com/zh-cn/idea

点击上图下载按钮,因为我是 Mac 所以这边显示 .dmg 下载格式,如果是 Windows 应该是 .exe 格式。

2. Maven 版本​

我们可以先使用 IDEA 默认的 Maven 尝试编译项目,如果成功就不用做下述任何配置。如果失败,请参考下述内容尝试更换 Maven 版本。

因为 Maven 版本过低 3.6.x 或者 3.9.3 及以上版本,引起和 IDEA 的冲突等问题,导致大家项目编译报错。

3. 检查项目 JDK 版本​

默认 JDK17 下载 Oracle 流程比较复杂,推荐给大家一个下载地址:JDK17下载地址。

默认选中的是 Windows x86 64-bit 的版本,适用于绝大部分 Windows 电脑,如果是 Mac 选择下菜单栏就好。

下载 JDK17 后不用配置环境变量,直接在 IDEA 中应用就可以。

IDEA 中打开 Project Structure... 配置,查看 JDK 选项。

检查 JDK 版本是否正确,如果不是 JDK17 项目会编译报错,同时 Maven 打包不正确。

4. 分支介绍​

《牛券oneCoupon优惠系统视频教学》第05小节

  • 从零到一创建SpringBoot项目&初始化通用配置

  • 20240708_init-code_ding.ma

《牛券oneCoupon优惠系统视频教学》第06小节

  • 基于责任链模式创建优惠券模板
  • 2024xxxxx_dev_create-template_chain_ding.ma

《牛券oneCoupon优惠系统视频教学》第07小节

  • 通过ShardingSphere完成优惠券分库分表
  • 2024xxxx_dev_coupon-tablue_shardingsphere_ding.ma

《牛券oneCoupon优惠系统视频教学》第08小节

  • 引入日志组件优雅记录操作日志

  • 2024xxxx_dev_operation-log_mzt-biz-log_ding.ma

《牛券oneCoupon优惠系统视频教学》第09小节

  • 基于注解实现分布式锁防重复提交
  • 2024xxxxx_dev_repeat-submit_lock-annotation_ding.ma

初始化通用配置​

如果大家对于多 Modules 的项目创建不太熟悉,可以查看以下视频学习:

1. 异常码​

  • 异常码设计
  • 阿里巴巴泰山版java开发手册@异常日志-错误码章节

2. 全局统一返回类​

3. 全局异常拦截器​

4. SpringBoot Starter​

SpringBoot Starter 是 SpringBoot 提供的一种简化配置和依赖管理的机制。它是预配置的依赖集合,旨在帮助开发者快速集成常用的库和功能,从而加速开发过程。

4.1 Starter 优点​

自动配置:

  • 每个 Starter 都会包括 Spring Boot 的自动配置功能。它根据应用的需求自动配置相关组件,减少了大量的手动配置工作。

简化依赖配置:

  • SpringBoot Starter 提供了一组常用的依赖,简化了 Maven 或 Gradle 中的配置。在使用 Starter 时,通常只需要在 pom.xml 或 build.gradle 中添加一个简单的依赖项,而不需要手动管理这些依赖的具体版本。
  • 例如 spring-boot-starter-web、spring-boot-starter-data-jpa、spring-boot-starter-security 等。这使得集成特定功能变得简单直观。

解锁付费内容,👉 戳​