SpringBoot学习路线总结(附思维导图)

AI摘要

本文是关于SpringBoot的学习路线总结,包括SpringBoot的思维导图、概念解析、优势、简单实例以及详细的学习路径,旨在帮助读者快速掌握SpringBoot的使用,提升开发效率。

🍅 作者简介:优快云2021博客之星亚军🏆、新星计划导师✌、博客专家💪

🍅  哪吒多年工作总结:Java学习路线总结,搬砖工逆袭Java架构师

🍅 关注公众号【哪吒编程】,回复1024,获取Java学习路线思维导图、大厂面试真题、加入万粉计划交流群、一起学习进步

目录

立志存高远,笃行践初心 

一、SpringBoot学习路线思维导图 

二、什么是Spring Boot

三、使用Spring Boot有什么好处

四、简单实例

1、IDEA构建项目

2、项目结构介绍

3、实现Spring Boot HelloWorld

五、SpringBoot学习路线


立志存高远,笃行践初心 

三更灯火五更鸡,正是男儿读书时。 黑发不知勤学早,白首方悔读书迟。

立志,标定人生方向;奋斗,创造人生价值,二者相辅相成,互相促进。

大部分程序员的「 目标 」都是成为一名优秀的工程师,一名可以统览全局的「 架构师 」。

无意间听到领导们的谈话,现在公司的现状是码农太多,但能独立带队的人太少,简而言之,不缺干活的,缺PM。

也许这也是这个行业的现状,也是传说中的“35岁危机”的最好解释,如果你马上35岁了,但是你能干的,毕业生也能干,老板还要你作甚? 

最近也有很多好友在群里问我,Java知识体系庞大,按照什么顺序学习才是最高效的呢?

一、SpringBoot学习路线思维导图 

二、什么是Spring Boot

Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。用我的话来理解,就是 Spring Boot 其实不是什么新的框架,它默认配置了很多框架的使用方式,就像 Maven 整合了所有的 Jar 包,Spring Boot 整合了所有的框架。

1、简化spring应用开发的一个框架;
2、spring技术栈的一个大整合;
3、J2EE开发的一站式解决方案;

三、使用Spring Boot有什么好处

其实就是简单、快速、方便!

平时如果我们需要搭建一个Spring Web项目的时候需要怎么做呢?

配置web.xml,加载spring和springMVC
配置数据库连接、配置spring事务
配置加载配置文件的读取,开启注解
配置日志文件
...
配置完成之后部署Tomcat调试
...

现在非常流行微服务,如果我这个项目仅仅只是需要发送一个邮件,如果我的项目仅仅是生产一个积分;我都需要这样折腾一遍!

但是如果使用 Spring Boot 呢?
很简单,我仅仅只需要非常少的几个配置就可以迅速方便的搭建起来一套 Web 项目或者是构建一个微服务!

四、简单实例

1、IDEA构建项目

(1) 选择 File -> New —> Project… 弹出新建项目的框

(2) 选择 Spring Initializr,Next 也会出现上述类似的配置界面,Idea 帮我们做了集成

(3) 填写相关内容后,点击 Next 选择依赖的包再点击 Next,最后确定信息无误点击 Finish。

2、项目结构介绍

 如上图所示,Spring Boot 的基础结构共三个文件:

  • src/main/java 程序开发以及主程序入口
  • src/main/resources 配置文件
  • src/test/java 测试程序

3、实现Spring Boot HelloWorld

(1)maven配置

给maven 的settings.xml配置文件的profiles标签添加

<profile>
  <id>jdk-1.8</id>
  <activation>
    <activeByDefault>true</activeByDefault>
    <jdk>1.8</jdk>
  </activation>
  <properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
    <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
  </properties>
</profile>

(2)导入spring boot相关的依赖

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.5.9.RELEASE</version> 
</parent>
<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
</dependencies>

(3)编写一个主程序;启动Spring Boot应用

/**
 *  @SpringBootApplication 来标注一个主程序类,说明这是一个Spring Boot应用
 */
@SpringBootApplication
public class HelloWorldMainApplication {
    public static void main(String[] args) {
        // Spring应用启动起来
        SpringApplication.run(HelloWorldMainApplication.class,args);
    }
}

(4)编写相关的Controller、Service

@Controller
public class HelloController {
    @ResponseBody
    @RequestMapping("/hello")
    public String hello(){
        return "Hello World!";
    }
}

@RestController 的意思就是 Controller 里面的方法都以json格式输出,不用再写什么jackjson配置的了。


(5)运行主程序测试


(6)如何做单元测试

打开的 src/test/ 下的测试入口,编写简单的 http 请求来测试;使用 mockmvc 进行,利用 MockMvcResultHandlers.print() 打印出执行结果。

@RunWith(SpringRunner.class)
@SpringBootTest
public class HelloTests {
    private MockMvc mvc;
 
    @Before
    public void setUp() throws Exception {
        mvc = MockMvcBuilders.standaloneSetup(new HelloWorldController()).build();
    }
 
    @Test
    public void getHello() throws Exception {
        mvc.perform(MockMvcRequestBuilders.get("/hello").accept(MediaType.APPLICATION_JSON))
                .andExpect(status().isOk())
                .andExpect(content().string(equalTo("Hello World")));
    }
}

(7)简化部署

<!-- 这个插件,可以将应用打包成一个可执行的jar包;-->
<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

将这个应用打成jar包,直接使用java -jar的命令进行执行。

五、SpringBoot学习路线

【Spring Boot 1】入门篇

【Spring Boot 2】web应用开发,实现CRUD

【Spring Boot 3】Thymeleaf 使用详解

【Spring Boot 4】如何优雅的使用 Mybatis

【Spring Boot 5】Spring Boot Jpa 的使用

【Spring Boot 6】自定义starter

【Spring Boot 7】RabbitMQ 详解 

【Spring Boot 8】Okhttp实现GitHub第三方登录

【Spring Boot 9】结合mybatis实现增删改查

【Spring Boot 10】Spring Boot + mybatis + Thymeleaf 分页示例(纯底层代码,不是pagehelper)

【Spring Boot 11】Spring Boot如何测试打包部署

【Spring Boot 12】看完这篇,Redis你就入门了

【Spring Boot 13】实现热部署

【Spring Boot 14】原理篇

【Spring Boot 15】启动类原理解析

【Spring Boot 16】Spring Boot常用注解介绍及使用

【Spring Boot 17】浅谈分布式锁

​​​​​​【Spring Boot 18】Spring Boot + Vue 实现CRUD

【Spring Boot 19】Spring Boot整合阿里云OSS实现云存储

​​​​​​【Spring Boot 20】Spring Boot + Vue 整合阿里云视频点播

【Spring Boot 21】Spring Boot 项目如何部署

【Spring Boot 22】QueryMapper初探

【Spring Boot 23】MyBatis事务管理

【Spring Boot 24】MyBatis逆向工程(Example + Criteria简介)

【Spring Boot 25】JdbcTemplate配置类 + 事务控制 + API简介

【Spring Boot 26】分别在SpringBoot和Vue中解决跨域问题

【Spring Boot 27】Springboot配置两个数据库(附代码+源码分析)

【Spring Boot 28】Spring Boot整合easyExcel

【Spring Boot 29】Spring Boot整合流控组件Sentinel

【Spring Boot 30】Spring Boot整合全文搜索引擎Elasticsearch

 关注公众号,备注1024,获取Java学习路线思维导图、加入万粉计划交流群

C C++最新Java学习路线总结(思维导图篇),2024年最新C C++程序员必经的实践之路 🏆作者简介:哪吒,优快云2022博客之星Top1、优快云2021博客之星Top2、多届新星计划导师✌、博客专家💪,专注Java硬核干货分享,立志做到Java赛道全网Top N。🏆本文收录于,,目前已经700+订阅,优快云最强Java专栏,包含全部Java基础知识点、Java8新特性、Java集合、Java多线程、Java代码实例,理论结合实战,实现Java的轻松学习。🏆姐妹篇,,包含面向对象、基本数据类型、数组、继承和多态、泛型、枚举等Java基础知识点。🏆姐妹进阶篇, 阅读详情

相关推荐

Springboot 学习路线汇总(升职加薪必备架构图)

​。

Park33的博客 491

SpringBoot学习(汇总版)

一、SpringBoot简介 1.1、Spring能做什么 1.1.1、Spring的能力及生态 1.1.2、Spring5的响应式编程 1.2、SpringBoot是什么 百度百科:Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application developmen

weixin_45495161的博客 4337

SpringBoot从入门到精通(全)

前言 ==本博文结合软件idea进行主要讲解== **springboot的特性主要有** - 简化 Spring 应用程序的创建和开发过程 - 抛弃了繁琐的 xml 配置过程,采用大量的默认配置简化以及注解反射 - 直接使用 java main 方法启动内嵌的 Tomcat 服务器运行 Spring Boot 程序,不需要部署 war 包文件 **四大核心**分别为自动配置、起步依赖、Actuator和命令行界面

码农研究僧的博客 7万+

【MIT-BEVFusion代码解读】第四篇:融合特征fuser和解码特征decoder

的大小,实际上源代码也是这么做的。最后将得到两个分支的特征进行。,第一个特征使用卷积降低通道数即可,第二个则需要反卷积来提升。所以backbone只有两个分支,都是5个卷积模块组成。的长和宽都减半至90,然后在经过5个相同的。将通道降至128,后面再接5个相同的。,将通道数128上至256,并且将。特征进行融合,这里使用的。部分由两部分组成,分别是。,这个分支首先经过第一个。,然后再卷积得到 =>提取特征,最后得到特征。得到了两个大小不同的。

非晚非晚的博客 2948

【Tessent Shell Users Manual】【Ch3】Design Introspection and Editing(未完待续)

Tessent Shell 提供了一系列用于检查(examining/introspecting)和编辑design的命令。

Tranquil_ovo的博客 1727

GEO优化内容营销策略:从规划到落地的全流程指南

GEO内容营销是通过地域化内容提升本地搜索排名、增加流量和转化率的策略。核心包括:构建本地用户画像,挖掘需求关键词;策划本地文化融合、案例研究等多样化内容;通过网站、社交媒体、本地KOL等渠道精准分发;优化本地关键词和视觉元素;监测数据并动态调整。案例显示,咖啡馆、工业企业和服装品牌通过本地化短视频、KOL合作及社群运营,显著提升了搜索排名、客流量和销售额。关键原则是内容本地化、精准分发、KOL合作、激励用户生成内容及数据驱动优化,实现高效本地市场渗透。

解锁AI流量新红利!🚀 GEO优化(生成引擎优化)助您掌控AI搜索,让AI成为您的品牌最佳代言人! 1324

Hopf振荡器在机器人步态控制里到底怎么用?一个CPG仿生案例说清楚

本文深入解析了Hopf振荡器在机器人步态控制中的实际应用,通过CPG仿生案例详细展示了从数学方程到关节指令的完整流程。重点探讨了Hopf振荡器的极限环稳定性、参数调节技巧及自适应控制策略,为机器人运动控制提供了高效解决方案。

weixin_29284657的博客 196

在Android Jetpack Compose中实现夜间模式

Android基于Compose的深色主题实现

虎哥LoveDroid 1233

别再只会复制Haar级联代码了!OpenCV人脸检测全方案深度解析,从原理到工业级落地

通用预训练模型在你的业务场景效果不好时,用自己的业务数据集训练专属的级联器,是提升精度的终极方案,OpenCV自带和工具,支持自定义Haar/LBP级联器训练。场景首选方案次选方案新手入门学习Haar级联分类器LBP级联分类器嵌入式轻量固定场景LBP级联分类器YuNet轻量版工业级落地项目(99%场景)DNN+YuNetMTCNN多人脸+小目标复杂场景DNN+YuNet自定义微调模型同时做人脸+其他目标检测。

2601_94871597的博客 378

C#与倍福Plc通信——使用仿真软件模拟倍福PLC运行

安装这个软件之前先安装VisualStudio,本文安装这个软件时已经安装了VisualStudio2019。1、下载倍福PLC编程软件TwinCAT。

qq_34059233的博客 3662

前端Three.js面试题及参考答案

渲染循环(Render Loop)是 Three.js 中一个非常重要的概念,它是一个不断重复执行的过程,用于更新和渲染 3D 场景。在每次循环中,渲染循环会更新场景中的对象状态,如位置、旋转、缩放等,然后使用渲染器将更新后的场景渲染成 2D 图像显示在屏幕上。通过不断地重复这个过程,就可以实现动画效果。渲染循环的核心作用是确保场景能够实时更新,给用户带来流畅的视觉体验。如果没有渲染循环,场景将是静态的,不会有任何变化。只有通过不断地更新和渲染,才能让场景中的对象动起来,实现各种动画效果。

大模型大数据攻城狮的专栏 2719

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

上一篇: statement和prepareStatement 的区别
下一篇: JavaScript零基础入门 1:JavaScript表格简介
哪 吒
哪 吒 2022年度博客之星TOP 1 2022年度博客之星TOP 1 领域专家: 后端开发技术领域 领域专家: 后端开发技术领域
博客等级 码龄9年 59万+粉丝 2933原创
评论 20
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

打赏作者

哪 吒

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

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

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

打赏作者

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

抵扣说明:

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

余额充值