1-从一个SpringBoot的Demo入手

在研究源码之前我们还是本地启动一个示例代码,来通过这个示例代码的启动过程来进行源码的解析。

SpringBoot使得创建独立的、生产级的、基于Spring的应用程序变得很容易,创建的项目可以直接启动。

我们对Spring平台和第三方库有一个独到的看法,这样您就可以用最少的麻烦开始了。大多数Spring引导应用程序需要最少的Spring配置。

可以使用SpringBoot创建可以使用的Java-jar或更传统的WAR部署启动的独立Java应用程序。还提供了一个运行spring脚本的命令行工具。

Spring为所有开发提供一个非常快速和广泛可访问的入门体验。

提供一系列大型项目通用的非功能特性(例如嵌入式服务器、安全性、度量、运行状况检查、外部化配置)。完全没有代码生成,也不需要XML配置。

spring-boot v2.6.6代码下载地址

我们先来建一个maven项目,当然不想自己去创建项目可以使用Spring官网提供的项目初始化工具:
点击进入

进入网站后可以看到如下页面,填写上对应信息后,点击下面的Generate按钮生成项目:
在这里插入图片描述

拿到项目之后,可以先看下我们的pom.xml引入了哪些最基本的依赖:
父pom和一个核心的spring-boot-start依赖

<?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 https://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.6</version>
		<relativePath/> <!-- lookup parent from repository -->
	</parent>
	<groupId>com.example</groupId>
	<artifactId>demo</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<name>demo</name>
	<description>Demo project for Spring Boot</description>
	<properties>
		<java.version>11</java.version>
	</properties>
	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter</artifactId>
		</dependency>

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

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

</project>

然后可以看下示例代码,在示例代码中我加入了一个

入门代码:

package com.example.demo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;


@SpringBootApplication
public class DemoApplication {

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

}

好了有了以上的Demo,我们接下来就可以通过这个例子来深入探究下源码,后面的文章将一点点分析下spring-boot源码的启动过程。

技术咨询支持,可以扫描微信公众号进行回复咨询
在这里插入图片描述


, ,