SpringBoot快速上手——这个快速上手不一样哦 教会的是方法不是技术~教你学会读官方参考文献。

📑本篇内容:SpringBoot快速上手——这个快速上手不一样哦!教会的是方法不是技术~

📘 文章专栏:SpringBoot微服务 其原理与项目开发

🎬 最近更新:2022年1月25日 SpringBoot 与 SpringMVC进行整合扩展 不讲技术只讲学习方法 一文吃透学习框架技巧~

📚 更新周期:2022年1月24日 ~ 2022年1月25日

🙊个人简介:一只二本院校在读的大三程序猿,本着注重基础,打卡算法,分享技术作为个人的经验总结性的博文博主,虽然可能有时会犯懒,但是还是会坚持下去的,如果你很喜欢博文的话,建议看下面一行~(疯狂暗示QwQ)

🌇点赞 👍 收藏 ⭐留言 📝 一键三连 关爱程序猿,从你我做起

📝SpringBoot快速上手——这个快速上手教会的是方法不是技术~

⭐1、SpringBoot有何好处?为何要学?

学过SSM框架的同学在学习SpringBoot之后都会给出一致的好评!这是为什么呢?

🎁1、开发SSM项目存在的缺点

SSM项目开发的缺点

众所周知SSM项目整合时,经常被咱们称之为配置地狱,SSM框架最惹人恼的地方就是在于他的配置太过于繁琐,很多东西都需要自己手动配置才能进行生效,虽然有注解替我们简化了部分开发,但是底部依赖的配置文件还是太多,比如说管理mybatis的mybatis-config.xml,spring整合mybatis的spring-mybatis.xml等等这一系列的配置文件,让我们在写项目前就要准备很长时间花费大量时间配置相同的东西,就是浪费时间。

  • 大量maven依赖的配置冗余
  • 每次构建项目都要书写大量相同配置文件极大浪费了项目开发时间
  • 每次整合第三方技术都需要编写相关配置文件
  • 项目测试每次都需要部署tomcat这个服务猫

🎁2、如何解决SSM项目的缺点呢?SpringBoot来告诉你

SpringBoot是什么?

简单来讲SpringBoot就和Vue概念上差不多,只不过一个是JavaSpring的快速开发脚手架,而Vue是一个前端页面的快速开发脚手架,其通过了约定大于配置的方式,快速构建和启动了Spring项目。

SpringBoot的特点以及其是如何解决SSM框架开发的弊端

  • SpringBoot可以快速开发Spring应用的框架
  • SpringBoot程序内嵌了tomcat服务器无需额外配置整合服务器。
  • 细化并且简化了maven配置,可以通过父pom.xml引入对应的maven仓库
  • SpringBoot内部整合了大量的注解,基于注解配置,对底层源码了解之后可以自己全面接管想要适配的工具。
  • 可以快速整合流行框架通过引入 spring-boot-starter-xxx来快速整合。

小结:SpringBoot就是一个Spring快速开发的脚手架,按照约定大于配置的规定,优化了繁琐的配置工作以及项目的依赖管理,而且集成了内嵌tomcat无需额外配置,直接运行即可。

⭐2、Hello SpringBoot⭐

通过HelloSpringBoot程序进行快速上手

步骤1:创建一个空的项目用于学习

在这里插入图片描述

此时你会得到一个空的项目工程

在这里插入图片描述

步骤2:创建Maven工程 导入SpringBoot的父工程依赖

在这里插入图片描述

得到了如图所示的Maven工程,接着这个来配置pom.xml管理对应的依赖

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.6.3</version>
</parent>
  • 上述是对当前项目所依赖的父工程项目仓库进行了配置。

为什么呢?SpringBoot的官方告诉了你,学习技术还是要根据官方文档来学会看官方文档真的很重要~

SpringBoot 官方学习文档:Spring Boot 官方下载与参考文献

在这里插入图片描述

进入当前页面之后,你大致可以看到了有关于SpringBoot的所有学习板块了

找到我们当前所需要进行学习的板块,快速进行搭建。

在这里插入图片描述

  • 进入之后咱们能看到左侧的当前学习板块的目录,如图所示

在这里插入图片描述

简而言之前面都是告诉我们如何配置SpringBoot的基本环境搭建 ,例如Jdk,Maven等…

开始还是要看4.Developing Your First Spring Boot Application开发属于自己的第一个SpringBootApplication

学习之前需要检查环境是否配置成功

  • Jdk的配置是否已经安装
PS H:\springboot入门及源码\SpringBootDemo> java -version
java version "1.8.0_301"
Java(TM) SE Runtime Environment (build 1.8.0_301-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.301-b09, mixed mode)
  • Maven工程环境
PS H:\springboot入门及源码\SpringBootDemo> mvn -v
Apache Maven 3.8.1 (05c21c65bdfed0f71a2f2ada8b84da59348c4c5d)
Maven home: F:\apache-maven-3.8.1\bin\..
Java version: 1.8.0_301, vendor: Oracle Corporation, runtime: C:\Program Files\Java\jdk1.8.0_301\jre
Default locale: zh_CN, platform encoding: GBK
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"

2.1 Creating the POM (配置Maven依赖仓库)

在这里插入图片描述

这是官方给出的这里,他依赖了Spring-boot-starter-parent父Maven工程仓库

为什么依赖这个了呢SpringBoot依赖了他之后干了些什么自动装配原理?又是什么?如何彻底了解SpringBoot程序当中的pom.xml文件到底干了啥

需要了解,请看这篇文章

SpringBoot的自动装配原理——其实真得就是你想的那么简单~

🎁2.2. Adding Classpath Dependencies(添加依赖)

如果你已经看完了上述那么接下来操作就如鱼得水,信手拈来了~

在这里插入图片描述

说白了,你看到了这里就知道了pom.xml中的Spring-boot-starter-parent实际就干了一件事情,帮我们管理SpringBoot中的依赖管理的同时也将所有大多数我们未来可能需要进行的配置依赖都加载在仓库当中了。

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
</dependencies>

按照他给的操作添加spring-boot-starter-web依赖,pom.xml文件会自动去父工程的Maven仓库中去寻找需要安装的版本,进行依赖管理。

进行了上述操作现在的pom.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.6.3</version>
    </parent>

    <groupId>com.alascanfu</groupId>
    <artifactId>SpringBootDemo</artifactId>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>
</project>

上述中顺便对jdk版本也进行了设置

🎁2.3 Writing the Code(写代码)

在这里插入图片描述

官方是依赖了一个@EnableAutoConfiguration这个注解来进行对SpringBootApplication程序进行的启动,但是读过源码的同学都知道这个注解不过是@SpringBootApplication注解组合注解之一。

所以我们可以写出:

Application.java

@SpringBootApplication
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class,args);
    }
}

在这里插入图片描述

官网同时也给出了 主线程中的 这个方法的简单解释.

我们这里稍微瞟一眼

    public static ConfigurableApplicationContext run(Class<?> primarySource, String... args) {
        return run(new Class[]{primarySource}, args);
    }

这个run方法的第一个参数,是作为主要启动源的类,第二个参数是启动源类中的参数

细致分析,有空的话小付会更新的。

🎁2.4 Running the Example(运行测试)

这样一个启动类就已将完成啦~

在这里插入图片描述

控制台打印下述则证明启动成功~

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::                (v2.6.3)

2022-01-25 15:37:35.017  INFO 17144 --- [           main] com.alascanfu.Application                : Starting Application using Java 1.8.0_301 on DESKTOP-85NIFSS with PID 17144 

再次期间我们可以对我们SpringBoot的Controller层进行对应的配置再进行测试

官网提到了@RestController and @RequestMapping 这两个注解这里不再多说了,个人去理解一下。

@RestController
public class HelloController {
    
    @RequestMapping("/hello")
    public String hello(){
        return "Hello,SpringBoot~";
    }
}
  • 小付这里编写了一个非常简单的Controller 用于进行咱们第一个SpringBoot程序的测试,如此一来入门SpringBoot程序的官方文档的学习就基本告一段落了

进行测试,检查是否如我们所想~

http://localhost:8080/hello

在这里插入图片描述

okk大功告成~

🙊3、学习总结

这也算入门了SpringBoot程序的搭建了,后续学习按照官方文档来就好了,初学者可以根据部分大佬的视频进行快速学习,但是二刷时候,希望能提高自身的学习能力,自己尝试阅读官方文档知识进行细致学习,学到了就是真正的掌握到自身的了,加油!

在这里插入图片描述

评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Alascanfu

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

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

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

打赏作者

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

抵扣说明:

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

余额充值