SpringBoot学习路线总结,跟着路线走,不迷路(附思维导图)

Posted 哪 吒

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot学习路线总结,跟着路线走,不迷路(附思维导图)相关的知识,希望对你有一定的参考价值。

🍅 Java基础教程系列:Java基础教程系列

🍅 Java学习路线配套文章:搬砖工逆袭Java架构师

🍅 Java经典面试题大全:10万字208道Java经典面试题总结(附答案)

🍅 简介:Java领域优质创作者🏆、CSDN哪吒公众号作者✌ 、Java架构师奋斗者💪

🍅 扫描主页左侧二维码,加入群聊,一起学习、一起进步 

🍅 欢迎点赞 👍 收藏 ⭐留言 📝  

立志存高远,笃行践初心 

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

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

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

无意间听到领导们的谈话,现在公司的现状是码农太多,但能独立带队的人太少,简而言之,不缺干活的,缺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从入门到实战》图书推荐

《Spring Boot从入门到实战》从Spring Boot的特性与基本原理讲起,逐步深入到Spring Boot与其他微服务开发组件的集成使用,并在后配合实际的项目案例,重点讲解Spring Boot的微服务开发,能够让读者全面、系统地学习Spring Boot开发的相关知识,并且对微服务应用开发有更深入的理解。
《Spring Boot从入门到实战》共12章,涵盖的主要内容有:Spring Boot框架基础及IoC与AOP原理;Spring MVC基础知识;Spring Boot的搭建与配置;Spring Boot的数据访问,包括mysql、Redis和MongoDB等多种数据库的集成;配置中心与服务发现,重点讲解Nacos等组件;服务限流与降级,重点讲解Sentinel组件的搭建与配置;全链路追踪系统;微服务监控,讲解Spring Boot Actuator等工具的使用;API网关,重点介绍Spring Cloud网关提供的相关断言配置;Spring Boot测试与部署;Spring Boot微服务开发和Spring WebFlux实战开发,全面展示微服务的开发过程。

 当当网链接:当当网

七、粉丝福利

送书啦,大家期待已久的《Spring Boot从入门到实战》

本次活动送书规则:

【送书啦】

1、社区积分榜前5名,随机抽取一名幸运者

2、社区积分榜6-15名,随机抽取一名幸运者

3、社区积分榜16-30名,随机抽取一名幸运者

【赚取积分方式】哪吒社区内发帖、点赞、评论都可赢取积分!

🍅 社区入口:哪吒社区

🍅 哪吒社区技能树打卡贴:【打卡贴 day9】序列化与反序列化

【抽取方式】Java随机函数;

【抽取时间】2021年11月5日 周五 21点整,抽取结果会在【哪吒微信一群、二群、三群】同时公布。

 添加微信,备注1024,赠送Java学习路线思维导图 

以上是关于SpringBoot学习路线总结,跟着路线走,不迷路(附思维导图)的主要内容,如果未能解决你的问题,请参考以下文章

两万字Vue基础知识总结,小白零基础入门,跟着路线走,不迷路(建议收藏)

有没有比较好的java学习路线图呢?

Python科学计算为目标学习路线应该怎么走

2021年Java后端开发学习路线(建议收藏!)

你们要的前端学习路线总结,配视频讲解

你们要的前端学习路线总结,配视频讲解