一、简介
Spring Boot
是由Pivotal
团队提供的全新框架,其设计目的是用来简化新Spring
应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot
致力于在蓬勃发展的快速应用开发领域(rapid application development)
成为领导者。
二、Spring Boot 的主要优点:
- 快速构建独立的
Spring
应用程序 - 开箱即用,提供各种默认配置来简化项目配置
- 内嵌式容器简化
Web
项目,嵌入Tomcat
、Gradle
,无需部署WAR
包 - 提供生产就绪功能,如指标,健康检查和外部配置
- 简化
Maven
及Gradle
配置 - 没有冗余代码生成和XML配置的要求
- 对主流开发框架和工具链做无配置集成
三、系统环境
- Java 1.8.0_152
- Spring Boot 1.5.8
- IntelliJ IDEA 2017.2.5
四、快速构建项目
使用http://start.spring.io的SPRING INITIALIZR
创建
1. 使用SPRING INITIALIZR
工具生成基础项目
打开浏览器:
http://start.spring.io/
-
选择构建工具
Maven Project
、Java
和Spring Boot
版本1.5.8
以及填 写一下工程基本信息: 点击
Generate Project
下载项目压缩包
2. 使用IDEA
将解压的项目包以Maven
方式导入
解压刚才下载的项目压缩包
打开
IDEA
在菜单中选择File
->New
->Project from Existing Sources...
选择解压的项目文件夹,点击
Opne
点击
Import project from external model
并选择Maven
,点击Finish
到底为止。
直接使用IDEA的Spring Initializr
创建
-
Create New Project
-
选择
Spring Initializr
-
填写项目信息
-
只加载Web相关依赖进来
-
填写项目保存路径
Finish 创建项目
五、基础项目结构解析
通过上述步骤构建了基础项目,如上图所示:
-
src/main/java
下的程序入口:DemoApplication
-
src/main/resources
下的配置文件:application.properties
-
src/test/
下的测试入口:DemoApplicationTests
生成的DemoApplication
和DemoApplicationTests
类都可以直接运行来启动当前创建的项目;
使用http://start.spring.io的SPRING INITIALIZR
创建的项目未配合任何数据访问或Web
模块,程序会在加载完Spring
之后结束运行。
六、引入Web模块(直接使用IDEA的Spring Initializr
创建项目的忽略这一步)
当前的pom.xml
内容如下,仅引入了两个模块:
-
spring-boot-starter
:核心模块,包括自动配置支持、日志和YAML -
spring-boot-starter-test
:测试模块,包括JUnit
、Hamcrest
、Mockito
<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>
引入Web模块,需添加spring-boot-starter-web
模块:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
七、编写Hello World服务
- 创建
package
命名为net.developerly.demo.web.controller
(根据实际情况修改) - 创建
HelloController
类,内容如下
@RestController
public class HelloController {
@GetMapping("/hello")
public String hello() {
return "Hello Spring Boot !";
}
}
-
在“DemoApplication”文件下右键菜单,启动主程序
打开浏览器访问
http://localhost:8080/hello
,可以看到页面输出`Hello Spring Boot !*
八、单元测试
-
在
HelloController
右键菜单Go To
->Test
-
Create New Test..
-
选择要单元测试的方法
-
在
test
文件加下面就会生成对应的测试类 -
编写单元测试
-
执行单元测试->右键菜单