Java輕量級框架技術(shù)與應(yīng)用課件:Spring Boot開發(fā)入門_第1頁
Java輕量級框架技術(shù)與應(yīng)用課件:Spring Boot開發(fā)入門_第2頁
Java輕量級框架技術(shù)與應(yīng)用課件:Spring Boot開發(fā)入門_第3頁
Java輕量級框架技術(shù)與應(yīng)用課件:Spring Boot開發(fā)入門_第4頁
Java輕量級框架技術(shù)與應(yīng)用課件:Spring Boot開發(fā)入門_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

Spring

Boot開發(fā)入門■Content認(rèn)

識Spring

BootSpring

Boot程序探究目

錄零

項(xiàng)目導(dǎo)言知識目標(biāo)了解Spring

Boot的特點(diǎn)熟悉Spring

Boot的開發(fā)環(huán)境配置;了解Spring

Boot工程目

錄結(jié)構(gòu);掌握Spring

Boot的自動

配置方法;熟悉Spring

Boot的執(zhí)行

;了解Spring

Boot

Starter的概念與使用;掌握SpringBoot的項(xiàng)目技能目標(biāo)具備精益求精、堅(jiān)持不

懈的精神;>具有獨(dú)立解決問題的能

;>具備靈活的思維和處理分析問題的能力;>具有責(zé)任心。能力目標(biāo)具備獨(dú)立搭建SpringBoot

開發(fā)環(huán)境的能力

具備為Spring

Boot項(xiàng)目添加熱部署與單元測

試的能力。零

學(xué)習(xí)目標(biāo)熱部署方法。壹

任務(wù)1:SpringBootSpring

Boot簡介Spring

Boot的核心設(shè)計(jì)思想是“約定優(yōu)于配置”。任務(wù)技能Spring

Boot特點(diǎn)相比較傳統(tǒng)的Spring

,SpringBoot優(yōu)點(diǎn)更明顯。開發(fā)環(huán)境準(zhǔn)備在開發(fā)入門程序之前,有必要對項(xiàng)日運(yùn)行所需環(huán)境進(jìn)行介紹,并提前準(zhǔn)備完成。壹任務(wù)1-1:Spring

Boot簡介Spring

框架是一個(gè)全面的企業(yè)級應(yīng)用程序開發(fā)框架,它提供了許多模塊和組件,包括依賴注入(DI)、面向切面編程(AOP)、數(shù)

據(jù)

、Web

開發(fā)、安全等。Spring

框架的目標(biāo)是簡化企業(yè)級應(yīng)用程序的開發(fā),提高開發(fā)效率和可維護(hù)性。Spring

Boot是Spring

框架的一種快速應(yīng)用程序開發(fā)框架,它通過提供自動配置和快速啟動功能,簡化了Spring

應(yīng)用程序的開發(fā)過程。Spring

Boot的目標(biāo)是使開發(fā)者能夠更快地構(gòu)建獨(dú)立的、生產(chǎn)級別的Spring

應(yīng)用程序。壹

任務(wù)1-2:SpringBoot特點(diǎn)1快速啟動

微服務(wù)支持

強(qiáng)大的生態(tài)系統(tǒng)

約定優(yōu)于配置

獨(dú)立運(yùn)行4

易于測試

自動配置

面向生產(chǎn)壹任務(wù)1-3:開發(fā)環(huán)境準(zhǔn)備為了方便入門程序的編寫,在開發(fā)入門程序之前,有必要對項(xiàng)日運(yùn)行所需環(huán)境進(jìn)行介紹,并提前準(zhǔn)備完成。3開發(fā)工具其中IntelliJ

IDEA是近幾年比較流行的,且業(yè)界評價(jià)最高的一款Java開發(fā)工具2項(xiàng)目構(gòu)建工具SpringBoot2.1.3

版本官方文檔聲明支持的第三方項(xiàng)目構(gòu)建工具包括Maven(3.3+)

GradleJDK

環(huán)境根據(jù)Spring

Boot官

方文檔說明,Spring

Boot2.1.3版本要求JDK

必須是JDK1.8以上,技能Spring

Boot的starter將所需的依賴全部以一致的方式進(jìn)行注入并進(jìn)行統(tǒng)一管理。Spring

Boot項(xiàng)目熱部署自動重新加載應(yīng)用程序的配置文件和代碼,而無需手動重啟應(yīng)用程序。貳任務(wù)2:Spring

Boot程序探究工程目錄結(jié)構(gòu)springboot

的目錄結(jié)構(gòu)Spring

Boot自動配置使得開發(fā)人員可以更加方便地構(gòu)建應(yīng)用程序,而不需要手動配置

各種組件。Spring

Boot執(zhí)行流程Spring

Boot常用類與接口和執(zhí)行流程任務(wù)貳

任務(wù)2-1:工程目錄結(jié)構(gòu)新建好的任務(wù)1中springboot的目錄結(jié)構(gòu)如圖。chapter0302

C:\Users\dz\Desktopyjava\chapter0302mainjavabcom.example.chapter0302Chapter0302Applicationresourcespertiestest臺mvnw.cmdm

pom.xml

頂目依賴管理文件>

曲L

External

Libraries>o

Scratches

and

Consoles頂目主程序啟動類全局配置文件b

com.example.chapter0302GChapter0302ApplicationTests⑧

一項(xiàng)目測試文件貳任務(wù)2-2:Spring

Boot自動配置Spring

Boot的自動配置是其一個(gè)非常重要的功能,它使得開發(fā)人員可以更加方便地構(gòu)建應(yīng)用程序,而不需要手動配置各種組件。Spring

Boot

應(yīng)用的啟動入口是@SpringBootApplication

注解標(biāo)注類中的main

(方法

,@SpringBootApplication

能夠掃措

Spring

組件并自動配置

Spring

Boot,自動配置示例代碼如下所示。@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Documented@Inherited@SpringBootConfiguration@EnableAutoConfiguration@ComponentScan(excludeFilters={@Filter(type=FilterType.CUSTOM,classes=TypeExcludeFilter.class),@Filter(type=FilterType.CUSTOM,classes=AutoConfigurationExcludeFilter.class)})public

@interface

SpringBootApplication{}貳任務(wù)2-2:SpringBoot自動配置1.注解SpringBoot支持多種注解,通過使用這些注解,開發(fā)人員可以告訴SpringBoot應(yīng)該如何自動配置應(yīng)

用程序的各種組件。(1)@Configuration(2)@EnableAutoConfiguration(3)@ComponentScan(4)@SpringBootApplication2.類路徑掃描SpringBoot會根據(jù)應(yīng)用程序的類路徑來掃描應(yīng)用程序中的組件和配置信息。具體來說,它會掃描以下幾個(gè)目錄:e

classpath

下的jar

包和目錄:application.properties

或application.yml文件所在的目錄:系統(tǒng)環(huán)境變量指定的目錄:在掃描過程中,Spring

Boot會根據(jù)注解和配置文件來進(jìn)行自動配置。貳任務(wù)2-3:SpringBoot執(zhí)行流程1.Spring

Boot常用類與接口(1)SpringApplicationRunListener

(

是Spring

Boot

應(yīng)用程序的執(zhí)行流程中不同執(zhí)行時(shí)間

點(diǎn)事件通知的監(jiān)聽器)(2)ApplicationContextlnitializer

(接口是Spring框架中用來初始化應(yīng)用程序上下文的回調(diào)

)(3)ApplicationRunner

和CommandLineRunner

(在項(xiàng)目開發(fā)過程中可以在容器啟動時(shí)執(zhí)行

一些程序處理)收集各種條件和回調(diào)接口,例如,ApplicationContextInitializer、ApplicationListener通

告started()創(chuàng)建并準(zhǔn)備Environment通

告environmentPrepared(創(chuàng)建并初始化ApplicationContext,例如,

設(shè)

置Environment,加載配置等通

告contextPrepared()通

告contextLoaded()調(diào)

用ApplicationContext的refresh)

方法,完成最終程序啟動執(zhí)

行ApplicationRunner

和CommandLineRunner通

告finished()結(jié)束2.執(zhí)行流程每個(gè)SpringBoot應(yīng)用程序都有一個(gè)主程序啟動類其中的main

法即啟動人口,main方法通過調(diào)用SpringApplication.run方法執(zhí)行整

個(gè)SpringBoot

應(yīng)用程序。貳任務(wù)2-3:SpringBoot執(zhí)行流程開

始貳

任務(wù)2-3:SpringBoot執(zhí)行流程具體步驟如下所示:①創(chuàng)建Spring

Application實(shí)例,調(diào)用run

方法,同時(shí)將啟動入口類作為參數(shù)傳遞進(jìn)去;②通過Spring

Factories

Loader

加載META-INF/spring.factories

文件,獲取并創(chuàng)建

SpringApplicationRunListener對象;③然后由SpringApplicationRunListener

來發(fā)出starting

消息;④創(chuàng)建參數(shù),并配置當(dāng)前

Spring

Boot應(yīng)用需要使用的Environment

實(shí)例。⑤完成之后,依然由SpringApplicationRunListener

來發(fā)出

environmentPrepared

消息;⑥創(chuàng)建Spring

的應(yīng)用上下文實(shí)例:ApplicationContext,初始化該實(shí)例并設(shè)置應(yīng)用環(huán)境配置實(shí)例:Environment,同時(shí)加載相關(guān)的配置項(xiàng);⑦由SpringApplicationRunListener

發(fā)出contextPrepared

消息,告知Spring

Boot應(yīng)用當(dāng)前使用的

ApplicationContext

已準(zhǔn)備完畢;⑧將各種Bean組件裝載入Spring

IO

容器/應(yīng)用上下文:⑨重新刷新

Refresh

Spring的應(yīng)用上下文實(shí)例:ApplicationContext,完成IOC

容器可用的最后一步;⑩由SpringApplicationRunListener

發(fā)出started

消息,完成最終的程序的啟動;?由SpringApplicationRunListener

發(fā)出

running

消息,告知程序已成功運(yùn)行起來了。貳

任務(wù)2-4:Spring

Boot的starter在任何一個(gè)項(xiàng)目中,依賴管理都是至關(guān)重要的一部分。開發(fā)人員在使用時(shí)只需在pom

文件中進(jìn)行依賴注入即可,以達(dá)到快速搭建項(xiàng)目的目的。1.Starter概述Starter可以將需要的功能整合起來,像是一個(gè)可拔插式的插件,方便使用。StarterAutoConfiguration依賴所用的JarPropertiespertiesJar

A,Jar

B,Jar

C,

…自定義依賴Configuration名稱作用spring-boot-starter核心starter,包括自動化配置支持,日志以及YAMLspring-boot-starter-aopSpring

AOP和AspectJ相關(guān)的切面編程starterspring-boot-starter-data-jpa使用Hibernate

Spring

Data

JPA的starterspring-boot-starter-jdbc使用HikariCP連接池JDBC的starterspring-boot-starter-security使用Spring

Security的starterspring-boot-starter-testSpringBoot測試相關(guān)的starterspring-boot-starter-web構(gòu)建restful、springMVC的web應(yīng)用程序的starterspring-boot-starter-data-redis支持redis緩存。貳

任務(wù)2-4:Spring

Boot的starter比較常用的starter

見表貳任務(wù)2-4:Spring

Boot的starter基本上不同的Starter

都會使用到兩個(gè)內(nèi)容:AutoConfiguration

和ConfigurationProperties。我們使用ConfigurationProperties

來保存我們的配置,并且這些配置都可以有一個(gè)默認(rèn)值,在沒

有主動覆寫原始配置的情況下,默認(rèn)值就會生效。除此之外,Starter的ConfigurationProperties

還使

得所有的配置屬性被聚集到一個(gè)文件中,這樣我們就告別了Spring

項(xiàng)目中XML地獄。貳任務(wù)2-5:SpringBoot項(xiàng)目熱部署Spring

Boot項(xiàng)目熱部署是指在應(yīng)用程序運(yùn)行過程中,可以自動重新加載應(yīng)用程序的配置文件和代碼,而無需手動重啟應(yīng)用程序。這對于開發(fā)人員來說非常方便,可以大大提高開發(fā)效率。Spring

Boot支持熱部署的主要原因是它使用了Spring

Framework的動態(tài)模塊系統(tǒng),該系統(tǒng)允許應(yīng)用程序在運(yùn)行時(shí)動態(tài)加載和管理模塊。除了使用spring-boot-devtools

依賴之外,還可以使用其他一些工具來實(shí)現(xiàn)熱部署。例如

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論