文章目录

  • 1.搭建SpringBoot项目
  • 1.1通过官网搭建
  • 1.2通过IDEA搭建


1.搭建SpringBoot项目

通常情况下我们可以用三种情况搭建SpringBoot项目,通过官网搭建,Idea工具,还有Maven搭建,接下来我们一一讲解一下通过官网和IDea工具搭建。

1.1通过官网搭建

官网地址:https://start.spring.io/ 打开之后如图所示,我用红色字体为大家解释一下架子。

搭建SpringBoo项目 --讲述项目目录结构_spring boot


这里SpringBoot的版本建议大家选择低版本的,因为高版本的可能会报各种各样的错误,低版本的相对稳定。

  • SpringBoot版本说明
SNAPSHOT:快照版,表示开发版本,随时可能修改;
M1(Mn):M1是milestone的缩写,也就是里程碑版本;
Release:正式版,也可能没有任何后缀也表示正式版
  • SpringBoot打包类型说明:
使用SpringMVC开发的是一个web项目,但由于在SpringBoot中直接嵌入了Tomcat等
Web容器,所以在使用SpringBoot做Web开发时不需要部署War文件,只需要打成Jar
包即可。

1.2通过IDEA搭建

点击File->new->Project 弹出如下图所示窗口

搭建SpringBoo项目 --讲述项目目录结构_spring_02

然后点击Next,显示如下如所示页面。

搭建SpringBoo项目 --讲述项目目录结构_Maven_03

创建成功后的目录结构:

搭建SpringBoo项目 --讲述项目目录结构_spring_04

DemoApplication:启动类
application.properties:配置文件,但是我们通常都使用yml文件
pop.xml:POM文件

为大家详细介绍一下pop文件

  • SpringBoot项目必须继承spring-boot-starter-parent,即所有
    的SpringBoot项目都是spring-boot-starter-parent的子项目。
    spring-boot-starter-parent中定义了常用配置、依赖、插件等
    信息,供SpringBoot项目继承使用。
<parent>
  
<groupId>org.springframework.boot</groupI
d>
    <artifactId>spring-boot-starterparent</artifactId>
    <version>2.7.0-M1</version>
    <relativePath/> <!-- lookup parent
from repository -->
</parent>

SpringBoot项目中可以定义起步依赖,起步依赖不是以jar包为
单位,而是以功能为单位

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

spring-boot-maven-plugin插件是将项目打包成jar包的插件。
该插件打包后的SpringBoot项目无需依赖web容器,可以直接使
用JDK运行

<build>
    <plugins>
        <plugin>
          
<groupId>org.springframework.boot</groupI
d>
            <artifactId>spring-boot-mavenplugin</artifactId>
        </plugin>
    </plugins>
</build>
  • 配置文件

由于SpringBoot极大简化了Spring配置,所以只有一个
application.properties配置文件,且Spring的自动配置功能使得大
部分的配置都有默认配置,该文件的功能是覆盖默认配置信息,该
文件不写任何信息都可以启动项目。
比如启动后默认端口为8080,我们可以覆盖

server.port=6875