工具:IDEA
需要知识:提前掌握Idea工具的使用,Maven包管理工具的使用
1.在一个项目下面创建一个新的Module,选择类型为Spring Initializ
2.指定GAV及pom配置信息
Group:表示项目的包名
Artifact:表示项目的名字
Package:表示SpringBoo自动装配的启动类所在(启动类必须放在所有类的最前面)
3.选择Spring Booot版本及依赖
会根据选择的依赖自动添加起步依赖并进行自动配置
4.修改Content Root路径及文件所在的目录
5.对POM.xml文件进行解释
```java
<?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>
<!--继承 SpringBoot 框架的一个父项目,所有自己开发的 Spring Boot 都必须的继承-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.1.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<!--当前项目的 GAV 坐标-->
<groupId>com.bjpowernode.springboot</groupId>
<artifactId>002-springboot-springmvc</artifactId>
<version>1.0.0</version>
<!--maven 项目名称,可以删除-->
<name>002-springboot-springmvc</name>
<!--maven 项目描述,可以删除-->
<description>Demo project for Spring Boot</description>
<!--maven 属性配置,可以在其它地方通过${}方式进行引用-->
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<!--SpringBoot 框架 web 项目起步依赖,通过该依赖自动关联其它依赖,不需要我们一个一个去添加了
-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--SpringBoot 框架的测试起步依赖,例如:junit 测试,如果不需要的话可以删除-->
<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>
<!--SpringBoot 提供的打包编译等插件-->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
6.对sprongBoot项目结构进行说明
➢ .mvn|mvnw|mvnw.cmd:使用脚本操作执行maven相关命令,国内使用较少,可删除
➢ .gitignore:使用版本控制工具 git 的时候,设置一些忽略提交的内容
➢ static|templates:后面模板技术中存放文件的目录
➢ application.properties:SpringBoot的配置文件,很多集成的配置都可以在该文中
进行配置,例如:Spring、springMVC、Mybatis、Redis 等。目前是空的
➢ Application.java:SpringBoot 程序执行的入口,执行该程序中的 main 方法,SpringBoot
就启动了
7.创建一个springMVC的springBootController
SpringBootController 类所在包:com.bjpowernode.springboot.web
/**
* ClassName:SpringBootController
* Package:com.bjpowernode.springboot.web
* Description:<br/>
*/
@Controller
public class SpringBootController {
@RequestMapping(value = "/springBoot/say")
public @ResponseBody String say() {
return "Hello,springBoot!";
}
}
注意:新创建的类一定要位于 Application 同级目录或者下级目录,否则 SpringBoot 加载不到(约定大于配置)
8.在IDEA中右键运行Application类中的main方法
通过在控制台的输出,可以看到启动 SpringBoot 框架,会启动一个内嵌的 tomcat,端口号为 8080,上下文根为空。
9.在浏览器中输入http://localhost:8080/sprinBoot/say访问
10.案例分析
➢ Spring Boot的父级依赖spring-boot-starter-parent 配置之后,当前的项目就是 SpringBoot 项目
➢ spring-boot-starter-parent 是一个 Springboot 的父级依赖,开发 SpringBoot 程序都需要继承该父级项目,它用来提供相关的 Maven 默认依赖,使用它之后,常用的 jar包依赖可以省去version配置
➢ springBoot 提供了哪些默认 jar 包的依赖,可查看该父级依赖的 pom 文件
➢ 如果不想使用某个默认的依赖版本,可以通过 pom.xml 文件的属性配置覆盖各个依赖项,比如覆盖 Spring 版本
➢ @SpringBootApplication 注解是 Spring Boot 项目的核心注解,主要作用是开启Spring 自动配置,如果在 Application 类上去掉该注解,那么不会启SpringBoot
程序
➢ main 方法是一个标准的 Java 程序的 main 方法,主要作用是作为项目启动运行的入口
➢ @Controller 及 @ResponseBody 依然是我们之前的 Spring MVC,因为 Spring Boot的里面依然是使用我们的 Spring MVC + Spring + MyBatis