一、工程创建流程
1.创建maven工程
2.引入依赖
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>
<groupId>com.xxx</groupId>
<artifactId>xxx-xxx-service</artifactId>
<version>1.0.0</version>
<name>xxx-xxx-service</name>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.2.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
</project>
3.编写Api
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HelloApi {
@RequestMapping("/hello")
public String hello(){
return "hello";
}
}
4.启动
找到启动类Application.java,运行main函数
5.测试
浏览器地址栏:http://localhost:8080/hello
二、说明
1.spring-boot-starter-parent
SpringBoot提供了一个名为spring-boot-starter-parent的工程,里面已经对各种常用依赖(并非全部)的版本进行了管理。项目需要以这个项目为父工程,这样就不用操心依赖的版本问题了,需要什么依赖,直接引入坐标即可。
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.2.RELEASE</version>
</parent>
可以点进去看看有什么:
可以看出:
1)spring-boot-starter-parent的parent是spring-boot-dependencies
2)spring-boot-starter-parent 的有如下基本功能:
- 定义了 Java 编译版本,如上为 1.6。
- 使用 UTF-8 格式编码
- maven源文件和目标文件编译的版本
- 执行打包操作的配置
- 自动化的资源过滤
- 自动化的插件配置
3)spring-boot-dependencies里面定义了很多版本号,这个就是pom文件里面有些依赖我们不必须写或者不需要写版本号的原因。
2.spring-boot-starter-web
spring-boot-starter-parent父依赖启动器的主要作用是进行版本统一管理,那么项目运行依赖的JAR包是从何而来的?可以查看spring-boot-starter-web依赖文件源码:
在pom.xml中引入spring-boot-starter-web依赖启动器时,就可以实现Web场景开发,而不需要额外导入Tomcat服务器以及其他Web依赖文件等。当然,这些引入的依赖文件的版本号还是由spring-boot-starter-parent父依赖进行的统一管理。