Spring Boot主要目的是簡化了Spring的引用開發,遵循約定大於配置的思想,不須要咱們再去配置就能運行Spring應用,Spring Boot管理Spring容器,第三方插件,而且提供了不少默認系統級的服務。大部分Spring應用,不管是簡單的WEB系統仍是構建複雜的系統,都自須要少許配置和代碼就能完成,去繁從簡,這樣的結果就能讓咱們很快的建立一個獨立的,產品級別的應用。java
背景:J2EE笨重的開發、繁多的配置、低下的開發效率、複雜的部署流程、第三方技術集成難度大。web
解決:spring
Spring Boot 經過 Starter 來提供微服務,Spring Boot 已經提供了一系列 Starter,你也能夠開發本身的starter,好比須要開發一個Web應用,只須要在pom.xml中進行一下聲明便可。瀏覽器
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-web -->
<!-- 這是引用一個WEB應用,很簡單吧 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.0.3.RELEASE</version>
</dependency>
複製代碼
Spring Boot 相對與Spring框架的優勢有哪些?bash
體驗完成一個簡單的WEB應用"Hello,Spring Boot!!",示例中使用的環境爲服務器
- JDK1.8
- Maven 3.X
- Intellij IDE 2018
- Spring Boot 2.0.3.RELEASE
複製代碼
Maven的設置app
<profile>
<id>jdk-1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
複製代碼
一個功能:瀏覽器發送hello請求,服務器接受請求並處理,響應Hello World字符串;框架
(1) 建立項目,選擇Spring starter Projectmaven
(2)點擊Next,填寫跟項目相關的各類信息(咱們要作WEB項目)分佈式
(3) 選擇須要的Dependency,而後Next
在這裏的版本,我沒有使用最新版,由於在使用的阿里雲中心中沒法下載,因此我使用的2.0.4的版本
(4) 最後"Finish",就開始下載jar包了,這個過程須要的時間比較長
(5) 等待完畢以後的效果圖以下,我調整了一下核心Application啓動的位置
要將Application類放在最外側,即包含全部子包 緣由:spring-boot會自動加載啓動類所在包下及其子包下的全部組件.
(6) 新建controller包,完成相關的測試
package com.hanpang.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.servlet.ModelAndView;
@Controller
public class Demo01Controller {
@GetMapping("/test01")
public ModelAndView test01() {
System.out.println("Hello World");
return null;
}
}
複製代碼
(7) 右鍵運行Demo01Application啓動類
(8) 在地址欄中訪問,沒有發佈路徑
其實整個過程你感受很簡單,中間過程也是遇到了各類錯誤,但願你們增長動手能力和解決問題的能力
備註:Spring Boot默認啓動的是8080端口,WEB上下文是「/」,能夠經過application.properties來進行從新配置