版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
J
a
v
a
E
E框架整合開發(fā)第五章Spring
Boot入門本章目標(biāo)了解Spring
Boot的特性掌握Spring
Boot應(yīng)用開發(fā)環(huán)境的構(gòu)建本章內(nèi)容Spring
Boot概述第一個Spring
Boot應(yīng)用5.1
Spring
Boot概述5.1.1什么是Spring
Boot5.1.2
Spring
Boot的優(yōu)點(diǎn)5.1.3
Spring
Boot的主要特性5.1.1什么是Spring
BootSpring
Boot是由Pivotal團(tuán)隊(duì)提供的全新框架,其設(shè)計(jì)目的是用來簡化新Spring應(yīng)用的初始搭建以及開發(fā)過程。使用SpringBoot框架可以做到專注于Spring應(yīng)用的開發(fā),無須過多關(guān)注樣板化的配置。在Spring
Boot框架中,使用“約定優(yōu)于配置(COC,ConventionOver
Configuration)”的理念。針對企業(yè)應(yīng)用開發(fā),提供了符合各種場景的spring-boot-starter自動配置依賴模塊,這些模塊都是基于“開箱即用”的原則,進(jìn)而使企業(yè)應(yīng)用開發(fā)更加快捷和高效。可以說,Spring
Boot是開發(fā)者和Spring框架的中間層,目的是幫助開發(fā)者管理應(yīng)用的配置,提供應(yīng)用開發(fā)中常見配置的默認(rèn)處理(即約定優(yōu)于配置),簡化Spring應(yīng)用的開發(fā)和運(yùn)維,降低開發(fā)人員對框架的關(guān)注度,使開發(fā)人員把更多精力放在業(yè)務(wù)邏輯代碼上。5.1
Spring
Boot概述5.1.1什么是Spring
Boot5.1.2
Spring
Boot的優(yōu)點(diǎn)5.1.3
Spring
Boot的主要特性5.1.2
Spring
Boot的優(yōu)點(diǎn)Spring
Boot之所以能夠應(yīng)運(yùn)而生,是因?yàn)樗哂腥缦聝?yōu)點(diǎn):1.使編碼變得簡單:推薦使用注解。2.使配置變得快捷:自動配置、快速構(gòu)建項(xiàng)目、快速集成第三方技術(shù)的能力。3.使部署變得簡便:內(nèi)嵌Tomcat、Jetty等Web容器。4.使監(jiān)控變得容易:自帶項(xiàng)目監(jiān)控。5.1
Spring
Boot概述5.1.1什么是Spring
Boot5.1.2
Spring
Boot的優(yōu)點(diǎn)5.1.3
Spring
Boot的主要特性5.1.3
Spring
Boot的主要特性1.約定優(yōu)于配置Spring
Boot遵循“約定優(yōu)于配置”的原則,只需很少的配置,大多數(shù)情況直接使用默認(rèn)配置即可。2.獨(dú)立運(yùn)行的Spring應(yīng)用Spring
Boot可以以jar包的形式獨(dú)立運(yùn)行。使用java-jar命令或者在項(xiàng)目的主程序中執(zhí)行main方法運(yùn)行Spring
Boot應(yīng)用(項(xiàng)目)。3.內(nèi)嵌Web容器內(nèi)嵌Servlet容器,Spring
Boot可以選擇內(nèi)嵌Tomcat、Jetty等Web容器,無須以war包形式部署應(yīng)用。5.1.3
Spring
Boot的主要特性4.提供starter簡化Maven配置
Spring
Boot提供了一系列的starter
pom簡化Maven的依賴加載,基本上可以做到自動化配置,高度封裝,開箱即用。5.自動配置Spring
Spring
Boot根據(jù)項(xiàng)目依賴(在類路徑中的jar包、類)自動配置
Spring框架,極大減少了項(xiàng)目的配置。6.提供準(zhǔn)生產(chǎn)的應(yīng)用監(jiān)控
Spring
Boot提供基于HTTP、SSH、TELNET對運(yùn)行的項(xiàng)目進(jìn)行跟蹤監(jiān)控。7.無代碼生成和XML配置Spring
Boot不是借助于代碼生成來實(shí)現(xiàn)的,而是通過條件注解來實(shí)現(xiàn)的。提倡使用Java配置和注解配置相結(jié)合的配置方式。很方便快捷。本章內(nèi)容Spring
Boot概述第一個Spring
Boot應(yīng)用5.2第一個Spring
Boot應(yīng)用5.2.1
Maven簡介5.2.2
Maven的pom.xml5.2.3使用STS快速構(gòu)建Spring
Boot應(yīng)用5.2.4使用IntelliJ
IDEA快速構(gòu)建Spring
Boot應(yīng)用5.2.1
Maven簡介Apache
Maven是一個軟件項(xiàng)目管理工具?;陧?xiàng)目對象模型(Project
Object
Model,POM)的理念,通過一段核心描述信息
來管理項(xiàng)目構(gòu)建、報告和文檔信息。在Java項(xiàng)目中,Maven主要完成兩件工作:①統(tǒng)一開發(fā)規(guī)范與工具;②統(tǒng)一管理jar包。
Maven統(tǒng)一管理項(xiàng)目開發(fā)所需要的jar包,但這些jar包將不再包含在項(xiàng)目內(nèi)(即不在lib目錄下),而是存放于倉庫當(dāng)中。1.中央倉庫存放開發(fā)過程中所有jar包,例如JUnit,都可以通過互聯(lián)網(wǎng)從中央倉庫中下載,倉庫地址:。2.本地倉庫
本地計(jì)算機(jī)中的倉庫。官方下載Maven的本地倉庫,配置在
“%MAVEN_HOME%\conf\settings.xml”文件中,找到
“l(fā)ocalRepository”即可。?請思考Maven項(xiàng)目從哪個庫加載jar包呢?5.2第一個Spring
Boot應(yīng)用5.2.1
Maven簡介5.2.2
Maven的pom.xml5.2.3使用STS快速構(gòu)建Spring
Boot應(yīng)用5.2.4使用IntelliJ
IDEA快速構(gòu)建Spring
Boot應(yīng)用5.2.2
Maven的pom.xmlMaven是基于項(xiàng)目對象模型的理念管理項(xiàng)目的,所以Maven的項(xiàng)目都有一個pom.xml配置文件來管理項(xiàng)目的依賴以及項(xiàng)目的編譯等功能。1.properties元素在<properties></properties>之間可以定義變量,以便在<dependency></dependency>中引用,示例代碼如下:<properties><!--spring版本號--><spring.version>5.3.2.RELEASE</spring.version></properties><dependencies><dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>${spring.version}</version></dependency></dependencies>2.dependencies元素<dependencies></dependencies>,此元素包含多個項(xiàng)目依賴需要使用的<dependency></dependency>元素。3.dependency元素<dependency></dependency>元素內(nèi)部通過<groupId></groupId>、<artifactId></artifactId>、<version></version>三個子元素確定唯一的依賴,也可以稱為三個坐標(biāo)。示例代碼如下:<dependency><!--groupId組織的唯一標(biāo)識--><groupId>org.springframework</groupId><!--artifactId項(xiàng)目的唯一標(biāo)識--><artifactId>spring-core</artifactId><!--version項(xiàng)目的版本號--><version>${spring.version}</version></dependency>4.scope子元素在<dependency></dependency>元素中,有時使用<scope></scope>子元素管理依賴的部署。(1)compile(編譯范圍)(2)provided(已提供范圍)(3)runtime(運(yùn)行時范圍)(4)test(測試范圍)(5)system(系統(tǒng)范圍)5.2第一個Spring
Boot應(yīng)用5.2.1
Maven簡介5.2.2
Maven的pom.xml5.2.3使用STS快速構(gòu)建Spring
Boot應(yīng)用5.2.4使用IntelliJ
IDEA快速構(gòu)建Spring
Boot應(yīng)用5.2.3使用STS快速構(gòu)建Spring
Boot應(yīng)用可以使用Spring
Tool
Suite(STS)便捷地構(gòu)建Spring
Boot應(yīng)用。STS是一個定制版的Eclipse,專為Spring開發(fā)定制的,方便創(chuàng)建調(diào)試運(yùn)行維護(hù)Spring應(yīng)用。通過該工具,可以很輕易地生成一個Spring工程,比如Web工程,最令人興奮的是工程里的配置文件都將自動生成,開發(fā)者再也不用關(guān)注配置文件的格式及各種配置了。可以通過官網(wǎng)https://spring.io/tools下載
Spring
Tools
for
Eclipse,本書采用的版本是spring-tool-suite-4-4.9.0.RELEASE-e4.18.0-win32.win32.x86_64.self-extracting.jar。該版本與Eclipse一樣免安裝,解壓即可使用。另外,STS自帶Java
SE,所以也不需要安裝JDK。1.新建Spring
Starter
Project2.選擇項(xiàng)目依賴3.編寫測試代碼@RestControllerpublic
class
TestController
{@RequestMapping("/hello")public
String
hello()
{return"您好,Spring
Boot!";}}上述代碼中使用的@RestController注解是一個組合注解,相當(dāng)于SpringMVC中的@Controller和@ResponseBody注解的組合,具體應(yīng)用如下:如果只是使用@RestController注解Controller,則Controller中的方法無法返回JSP、html等視圖,返回的內(nèi)容就是return的內(nèi)容。如果需要返回到指定頁面,則需要用@Controller注解。如果需要返回
JSON,XML或自定義mediaType內(nèi)容到頁面,則需要在對應(yīng)的方法上加上
@ResponseBody注解。?請思考@RestController與@Controller的區(qū)別4.應(yīng)用程序的App類@SpringBootApplicationpublic
class
Ch51Application
{public
static
void
main(String[]
args)
{SpringApplication.run(Ch51Application.class,
args);}}上述代碼中使用@SpringBootApplication注解指定該程
序是一個Spring
Boot應(yīng)用,該注解也是一個組合注解,相當(dāng)于
@SpringBootConfiguration、@EnableAutoConfiguration和@ComponentScan注解的組合,具體細(xì)節(jié)在第6章講解。
SpringApplication類調(diào)用run方法啟動Spring
Boot應(yīng)用。5.運(yùn)行main方法啟動Spring
Boot應(yīng)用從控制臺信息可以看到Tomcat的啟動過程、Spring
MVC的加載過程。注意Spring
Boot內(nèi)嵌Tomcat容器,因此Spring
Boot應(yīng)用不需要開發(fā)者配置與啟動Tomcat。6.測試Spring
Boot應(yīng)用啟動Spring
Boot應(yīng)用后,默認(rèn)訪問地址為:
http://localhost:8080/,將項(xiàng)目路徑直接設(shè)為根路徑,這是
Spring
Boot的默認(rèn)設(shè)置。因此,我們可以通過
http://localhost:8080/hello測試應(yīng)用(hello與測試類
TestController中的@RequestMapping(“/hello”)對應(yīng))。5.2第一個Spring
Boot應(yīng)用5.2.1
Maven簡介5.2.2
Maven的pom.xml5.2.3使用STS快速構(gòu)建Spring
Boot應(yīng)用5.2.4
溫馨提示
- 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 園林景觀石材安裝合同
- 新學(xué)期自律保證書范文
- 九年級化學(xué)上冊 第五單元 定量研究化學(xué)反應(yīng) 第一節(jié) 化學(xué)反應(yīng)中的質(zhì)量守恒同步教案 (新版)魯教版
- 2024秋九年級語文上冊 第二單元 寫作 觀點(diǎn)要明確教案 新人教版
- 2024-2025學(xué)年新教材高中政治 第三課 只有中國特色社會主義才能發(fā)展中國 2 中國特色社會主義的創(chuàng)立、發(fā)展和完善(2)教案 部編版必修1
- 2024八年級數(shù)學(xué)下冊 第22章 四邊形22.3三角形的中位線教案(新版)冀教版
- 2024-2025學(xué)年高中歷史 第二單元 凡爾賽-華盛頓體系下的世界 第1課 巴黎和會(4)教學(xué)教案 新人教版選修3
- 2023六年級語文下冊 第二單元 口語交際:同讀一本書配套教案 新人教版
- 2023三年級數(shù)學(xué)上冊 五 周長第3課時 長方形的周長說課稿 北師大版
- 2023七年級英語上冊 Module 6 A trip to the zoo Unit 1 Does it eat meat教案 (新版)外研版
- 埋地鋼質(zhì)管道腐蝕與防護(hù)
- 人工智能對教育考試的改革與應(yīng)用
- 青年教師個人專業(yè)發(fā)展三年規(guī)劃表
- 會議宴會接待通知單
- 數(shù)字化人才管理
- 煙草行業(yè)供應(yīng)鏈優(yōu)化
- 血液循環(huán)系統(tǒng)課件
- 起重機(jī)械自查報告
- 2021年至2023年廣東省公務(wù)員遴選筆試真題、面試真題及答案解析(各地市、省直共12套)
- ZJ40J鉆機(jī)技術(shù)參數(shù)
- 提高冠脈介入手術(shù)術(shù)前準(zhǔn)備的合格率
評論
0/150
提交評論