Spring Boot 初識(shí),多指教——跟進(jìn)中……

一、介紹

Spring Boot 不是一門新技術(shù),從本質(zhì)上來(lái)說(shuō),Spring Boot 就是 Spring,Spring 框架功能很強(qiáng)大,但是就算是一個(gè)很簡(jiǎn)單的項(xiàng)目,也需配置很多東西。因此 Spring Boot 的作用就是幫我們自動(dòng)配置,其設(shè)計(jì)目的是用來(lái)簡(jiǎn)化新 Spring 應(yīng)用的初始搭建以及開(kāi)發(fā)過(guò)程。Spring Boot 是一個(gè)輕量級(jí)框架,可以完成基于 Spring 的應(yīng)用程序的大部分配置工作。

某種程度上來(lái)說(shuō),Spring Boot 默認(rèn)配置了很多框架的使用方式,就像 Maven 整合了所有的 jar 包,Spring Boot 整合了所有的框架。

Spring Boot 最重要的四個(gè)核心:

  1. 自動(dòng)配置:針對(duì)很多Spring應(yīng)用程序常見(jiàn)的應(yīng)用功能,Spring Boot 能自動(dòng)提供相關(guān)配置。
  2. 起步依賴:告訴Spring Boot需要什么功能,從而引入需要的庫(kù)。
  3. 命令行界面:是Spring Boot的可選特性,借此只需通過(guò)寫代碼就可完成完整的應(yīng)用程序,而無(wú)需傳統(tǒng)項(xiàng)目構(gòu)建。
  4. Actuator:讓你能夠深入運(yùn)行中的Spring Boot應(yīng)用程序。

二、入門Demo

首先,我們來(lái)對(duì)比傳統(tǒng)Spring MVC開(kāi)發(fā)一個(gè)簡(jiǎn)單的Hello World Web應(yīng)用程序,所需的基本的需求。

  1. 一個(gè)項(xiàng)目結(jié)構(gòu),其中有一個(gè)包含必要依賴的Maven或Gradle構(gòu)建文件,要有Spring MVC和Servlet API這些依賴。
  2. 一個(gè)web.xml文件,其中聲明了Spring的DispatcherServlet。
  3. 一個(gè)啟動(dòng)了Spring MVC的Spring配置。
  4. 一控制器類,相應(yīng)HTTP請(qǐng)求。
  5. 一個(gè)用于部署應(yīng)用程序的Web應(yīng)用服務(wù)器,如Tomcat。

其實(shí)我們不難看到,這其中只有一個(gè)東西是和業(yè)務(wù)功能相關(guān)的,即控制器,剩下的都是Spring開(kāi)發(fā)的Web應(yīng)用程序必需的通用模板。

接下來(lái)看看Spring Boot 會(huì)如何來(lái)做?
僅僅只需要非常少的幾個(gè)配置就可以迅速方便的搭建起來(lái)一套web項(xiàng)目。
構(gòu)建一個(gè)Sping Boot的Maven項(xiàng)目,通常使用Spring Initializr,主要包含:

  1. pom.xml:Maven構(gòu)建說(shuō)明文件。
  2. HelloApplication.java:一個(gè)帶有main()方法的類,用于啟動(dòng)應(yīng)用程序(關(guān)鍵)。
  3. HelloApplicationTests.java:一個(gè)空的Junit測(cè)試類,加載了一個(gè)使用Spring Boot字典配置功能的Spring應(yīng)用程序上下文。
  4. application.properties:一個(gè)空的properties文件,可根據(jù)需要添加配置屬性。

入口類:

package com.tianyu;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@SpringBootApplication
public class HelloApplication {

    @RequestMapping("/")
    public String index(){
        return "Hello Spring Boot";
    }
    public static void main(String[] args) {
        SpringApplication.run(HelloApplication.class, args);
    }
}

以上需要注意:

  1. @SpringBootApplication是Sprnig Boot項(xiàng)目的核心注解,目的是開(kāi)啟自動(dòng)配置。
  2. main方法是一個(gè)標(biāo)準(zhǔn)的Java應(yīng)用的main的方法,作為項(xiàng)目啟動(dòng)的入口。
  3. @RestController注解等價(jià)于@Controller+@ResponseBody的結(jié)合。

啟動(dòng)項(xiàng)目的三種方式:

  1. 通過(guò)HelloApplication的main方法。
  2. 通過(guò)使用命令 mvn spring-boot:run”在命令行啟動(dòng)該應(yīng)用。
  3. 打包成一個(gè)可以直接運(yùn)行的 JAR 文件,通過(guò)使用“java -jar”命令直接運(yùn)行。

未完跟進(jìn)中......(啟動(dòng)原理剖析)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容