目录
一、开发步骤
项目名称01-springboot-first
先创建一个空的工程,在这个工程里面
1. 创建一个 Module ,选择类型为 Spring Initializr 快速构建
![](https://img-blog.csdnimg.cn/img_convert/f844e2e90832f5ae20cf051f5700fd67.png)
2. 设置 GAV 坐标及 pom 配置信息
![](https://img-blog.csdnimg.cn/img_convert/7a3e1a8fbe1c68856e31ad1839477ef8.png)
3. 选择 Spring Boot 版本及依赖
会根据选择的依赖自动添加起步依赖并进行自动配置
![](https://img-blog.csdnimg.cn/img_convert/8f292df7dfb37c9cd8e80a50385933e7.png)
4. 设置模块名称、Content Root 路径及模块文件的目录
![](https://img-blog.csdnimg.cn/img_convert/b46df309c0f11206c7ec16cd33d6e4d7.png)
点击 Finish如果是第一次创建,在右下角会提示正在下载相关的依赖
可以看之前写的关于maven的介绍,换成阿里的镜像会快很多
5. 项目创建完毕
![](https://img-blog.csdnimg.cn/img_convert/efe8aae5c3280a2f5a62275532785d98.png)
一个基本的项目就是这样
- static:存放静态资源,如图片、CSS、JavaScript 等
- templates:存放 Web 页面的模板文件
- application.properties用于存放程序的各种依赖模块的配置信息,比如 服务端口,数据库连接配置等
- Application:程序入口
二、入门案例
项目名称:02-springboot-springmvc
步骤和上面的一样
1. 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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<!--继承Spring Boot框架的一个父项目,所有自己开发的SpringBoot都要继承-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.3.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<!--当前项目的GAV坐标-->
<groupId>com.md.springboot</groupId>
<artifactId>02-springboot-springmvc</artifactId>
<version>1.0.0</version>
<!--项目名称和项目描述,可以删除-->
<name>01-springboot-first</name>
<description>Demo project for Spring Boot</description>
<!-- maven属性配置,可以在其他地方通过${}方式引用-->
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<!--spring boot框架web项目的起步依赖,通过该依赖自动关联其他依赖,不需要一个个的添加-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- spring boot框架的测试起步依赖,可以删除-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<build>
<plugins>
<!--spring boot提供的打包编译插件-->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
2. 对 SpringBoot 项目结构进行说明
- .mvn|mvnw|mvnw.cmd:使用脚本操作执行 maven 相关命令,国内使用较少,可删除
- .gitignore:使用版本控制工具 git 的时候,设置一些忽略提交的内容
- static|templates:后面模板技术中存放文件的目录
- application.properties:SpringBoot 的配置文件,很多集成的配置都可以在该文件中进行配置,例如:Spring、springMVC、Mybatis、Redis 等。目前是空的
- Application.java:SpringBoot程序执行的入口,执行该程序中的main方法,SpringBoot就启动了
3. 创建一个 Spring MVC的Spring BootController
SpringBootController 类所在包:com.md.springboot.web
和写springMVC一样,只不过少了很多配置,直接写就行
package com.md.springboot.web;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
/**
* @author MD
* @create 2020-08-20 15:53
*/
@Controller
public class SpringBootController {
@RequestMapping(value = "/springBoot/say")
public @ResponseBody String say(){
return "hello , springBoot";
}
}
注意:新创建的类一定要位于 Application 同级目录或者下级目录,否则 SpringBoot 加 加载不到。
4. 在 IDEA 中右键,运行Application类中的main方法
通过在控制台的输出,可以看到启动 SpringBoot 框架,会启动一个内嵌的 tomcat,端口号为 8080,上下文根为空
在浏览器中输入 http://localhost:8080/springBoot/say 访问
![](https://img-blog.csdnimg.cn/img_convert/1ee22bab805d42c2fef82b4d1144651d.png)
三、入门案例分析
- Spring Boot 的父级依赖 spring-boot-starter-parent 配置之后,当前的项目就是 SpringBoot 项目
- spring-boot-starter-parent 是一个 Springboot 的父级依赖,开发 SpringBoot 程序都需要继承该父级项目,它用来提供相关的 Maven 默认依赖,使用它之后,常用的 jar包依赖可以省去 version 配置
- Spring Boot 提供了哪些默认 jar 包的依赖,可查看该父级依赖的 pom 文件
- 如果不想使用某个默认的依赖版本,可以通过 pom.xml 文件的属性配置覆盖各个依赖项,比如覆盖 Spring 版本
<properties>
<spring-framework.version>5.0.0.RELEASE</ spring-framework.version >
</properties>
@SpringBootApplication 是 注解是 Spring Boot 项目的核心注解,主要作用是开启Spring 自动配置在 ,如果在 Application 类上去掉该注解,那么不会启动 SpringBoot程序
- main 方法是一个标准的 Java 程序的 main 方法,主要作用是作为项目启动运行的入口
@Controller 及 @ResponseBody 依然是我们之前的 Spring MVC,因为 Spring Boot的里面依然是使用我们的 Spring MVC + Spring + MyBatis 等框架