1.spring-Boot簡介
- Spring Boot是由Pivotal團隊提供的全新架構,其設計目的是用來簡化新Spring應用的初始搭建以及開發過程。該架構使用了特定的方式來進行配置,進而使開發人員不再需要定義樣闆化的配置
- Spring Boot是spring家族中的一個全新架構,它用來簡化spring應用程式的建立和開發過程,即他能簡化我們之前采取的Spring+Spring MVC+Mybatis架構進行開發的過程
- 在以前我們采用ssm(Spring+Spring MVC+Mybatis)架構進行開發的時候,往往在搭建和整合三大架構時需要做很多工作,例如配置web.xml,配置spring,mybatis,然後将他們整合的到一起,然而Spring-Boot對此進行了颠覆,他抛棄了繁瑣的xml配置,采用大量的預設配置簡化了我們的開發過程
- Spring Boot讓編碼變得簡單,讓配置變得簡單,讓部署變得簡單,讓監控變得簡單
2.四大特性
1.快速
- 能夠快速建立基于Spring的應用程式
2.簡單
- 能夠直接使用java main方法啟動内嵌的Tomcat, Jetty 伺服器運作Spring boot程式,不需要部署war封包件
- 提供約定的starter POM來簡化Maven配置,讓Maven的配置變得簡單
- 根據項目的Maven依賴配置,Spring boot自動配置Spring、Spring mvc等
- 基本可以完全不使用XML配置檔案,采用注解配置
3.監控
- 提供了程式的健康檢查等功能
3.四大核心
- 自動配置------簡化xml配置
- 起步依賴------簡化maven配置
- Actuator-------深入了解spring boot程式内部資訊
- 指令行界面—這是Spring Boot的可選特性,主要針對 Groovy 語言使用
4.開發環境
- 如果是使用 eclipse,推薦安裝 Spring Tool Suite (STS) 插件
- 如果使用 IDEA 旗艦版,自帶了Springboot插件
5.第一個Spring Boot項目
1.項目建立
在這裡,筆者采用的是idea的spring Boot自帶插件建立項目

根據項目需要修改
項目建立成功,相關的依賴正在下載下傳
.mvn下是他插件自己建立的,裡邊是maven的jar包和他的配置檔案,如果本地沒有maven可以使用idea自帶的maven插件編譯和打包我們的SNAPSHOT,這個檔案夾也可以直接删除
main下的Application是程式的入口main方法
resource下static存放靜态資源,template是模闆頁面,application.properties是配置檔案,以後會用到,現在是空的。
這個是pom.xml,spring boot自動幫我們配置,我們可以直接添加相關依賴
<?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>
<!--繼承spring Boot的父級項目的依賴-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.7.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.springBoot.demo</groupId>
<artifactId>01-springboot-web</artifactId>
<version>1.0.0</version>
<name>01-springboot-web</name>
<description>Demo project for Spring Boot</description>
<!--屬性配置-->
<properties>
<project.build.sourceEncording>UTF-8</project.build.sourceEncording>
<project.reporting.outputEncording>UTF-8</project.reporting.outputEncording>
<java.version>1.8</java.version>
</properties>
<dependencies>
<!--spring Boot 開發web項目的起步依賴-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--測試的起步依賴-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<!--spring boot提供的項目編譯打包插件-->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
這是spring boot入口main方法
package com.springboot.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
//spring Boot的入口main方法
@SpringBootApplication
public class Application {
public static void main(String[] args) {
//啟動了spring Boot程式,啟動spring容器,内嵌的tomcat
SpringApplication.run(Application.class, args);
}
}
現在我們來寫一個controller
package com.springboot.demo.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class hellocontroller {
@RequestMapping("/boot/hello")
public @ResponseBody String hello(){
return "hello spring boot";
}
}
在main方法那裡右鍵運作一下
這是spring boot的标志,括号裡邊是版本号
啟動内嵌的Tomcat