版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
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概述第一個(gè)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ì)目的是用來簡(jiǎn)化新Spring應(yīng)用的初始搭建以及開發(fā)過程。使用SpringBoot框架可以做到專注于Spring應(yīng)用的開發(fā),無須過多關(guān)注樣板化的配置。在Spring
Boot框架中,使用“約定優(yōu)于配置(COC,ConventionOver
Configuration)”的理念。針對(duì)企業(yè)應(yīng)用開發(fā),提供了符合各種場(chǎng)景的spring-boot-starter自動(dòng)配置依賴模塊,這些模塊都是基于“開箱即用”的原則,進(jìn)而使企業(yè)應(yīng)用開發(fā)更加快捷和高效??梢哉f,Spring
Boot是開發(fā)者和Spring框架的中間層,目的是幫助開發(fā)者管理應(yīng)用的配置,提供應(yīng)用開發(fā)中常見配置的默認(rèn)處理(即約定優(yōu)于配置),簡(jiǎn)化Spring應(yīng)用的開發(fā)和運(yùn)維,降低開發(fā)人員對(duì)框架的關(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.使編碼變得簡(jiǎn)單:推薦使用注解。2.使配置變得快捷:自動(dòng)配置、快速構(gòu)建項(xiàng)目、快速集成第三方技術(shù)的能力。3.使部署變得簡(jiǎn)便:內(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簡(jiǎn)化Maven配置
Spring
Boot提供了一系列的starter
pom簡(jiǎn)化Maven的依賴加載,基本上可以做到自動(dòng)化配置,高度封裝,開箱即用。5.自動(dòng)配置Spring
Spring
Boot根據(jù)項(xiàng)目依賴(在類路徑中的jar包、類)自動(dòng)配置
Spring框架,極大減少了項(xiàng)目的配置。6.提供準(zhǔn)生產(chǎn)的應(yīng)用監(jiān)控
Spring
Boot提供基于HTTP、SSH、TELNET對(duì)運(yùn)行的項(xiàng)目進(jìn)行跟蹤監(jiān)控。7.無代碼生成和XML配置Spring
Boot不是借助于代碼生成來實(shí)現(xiàn)的,而是通過條件注解來實(shí)現(xiàn)的。提倡使用Java配置和注解配置相結(jié)合的配置方式。很方便快捷。本章內(nèi)容Spring
Boot概述第一個(gè)Spring
Boot應(yīng)用5.2第一個(gè)Spring
Boot應(yīng)用5.2.1
Maven簡(jiǎn)介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簡(jiǎn)介Apache
Maven是一個(gè)軟件項(xiàng)目管理工具?;陧?xiàng)目對(duì)象模型(Project
Object
Model,POM)的理念,通過一段核心描述信息
來管理項(xiàng)目構(gòu)建、報(bào)告和文檔信息。在Java項(xiàng)目中,Maven主要完成兩件工作:①統(tǒng)一開發(fā)規(guī)范與工具;②統(tǒng)一管理jar包。
Maven統(tǒng)一管理項(xiàng)目開發(fā)所需要的jar包,但這些jar包將不再包含在項(xiàng)目?jī)?nèi)(即不在lib目錄下),而是存放于倉(cāng)庫(kù)當(dāng)中。1.中央倉(cāng)庫(kù)存放開發(fā)過程中所有jar包,例如JUnit,都可以通過互聯(lián)網(wǎng)從中央倉(cāng)庫(kù)中下載,倉(cāng)庫(kù)地址:。2.本地倉(cāng)庫(kù)
本地計(jì)算機(jī)中的倉(cāng)庫(kù)。官方下載Maven的本地倉(cāng)庫(kù),配置在
“%MAVEN_HOME%\conf\settings.xml”文件中,找到
“l(fā)ocalRepository”即可。?請(qǐng)思考Maven項(xiàng)目從哪個(gè)庫(kù)加載jar包呢?5.2第一個(gè)Spring
Boot應(yīng)用5.2.1
Maven簡(jiǎn)介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)目對(duì)象模型的理念管理項(xiàng)目的,所以Maven的項(xiàng)目都有一個(gè)pom.xml配置文件來管理項(xiàng)目的依賴以及項(xiàng)目的編譯等功能。1.properties元素在<properties></properties>之間可以定義變量,以便在<dependency></dependency>中引用,示例代碼如下:<properties><!--spring版本號(hào)--><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>,此元素包含多個(gè)項(xiàng)目依賴需要使用的<dependency></dependency>元素。3.dependency元素<dependency></dependency>元素內(nèi)部通過<groupId></groupId>、<artifactId></artifactId>、<version></version>三個(gè)子元素確定唯一的依賴,也可以稱為三個(gè)坐標(biāo)。示例代碼如下:<dependency><!--groupId組織的唯一標(biāo)識(shí)--><groupId>org.springframework</groupId><!--artifactId項(xiàng)目的唯一標(biāo)識(shí)--><artifactId>spring-core</artifactId><!--version項(xiàng)目的版本號(hào)--><version>${spring.version}</version></dependency>4.scope子元素在<dependency></dependency>元素中,有時(shí)使用<scope></scope>子元素管理依賴的部署。(1)compile(編譯范圍)(2)provided(已提供范圍)(3)runtime(運(yùn)行時(shí)范圍)(4)test(測(cè)試范圍)(5)system(系統(tǒng)范圍)5.2第一個(gè)Spring
Boot應(yīng)用5.2.1
Maven簡(jiǎn)介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是一個(gè)定制版的Eclipse,專為Spring開發(fā)定制的,方便創(chuàng)建調(diào)試運(yùn)行維護(hù)Spring應(yīng)用。通過該工具,可以很輕易地生成一個(gè)Spring工程,比如Web工程,最令人興奮的是工程里的配置文件都將自動(dòng)生成,開發(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.編寫測(cè)試代碼@RestControllerpublic
class
TestController
{@RequestMapping("/hello")public
String
hello()
{return"您好,Spring
Boot!";}}上述代碼中使用的@RestController注解是一個(gè)組合注解,相當(dāng)于SpringMVC中的@Controller和@ResponseBody注解的組合,具體應(yīng)用如下:如果只是使用@RestController注解Controller,則Controller中的方法無法返回JSP、html等視圖,返回的內(nèi)容就是return的內(nèi)容。如果需要返回到指定頁(yè)面,則需要用@Controller注解。如果需要返回
JSON,XML或自定義mediaType內(nèi)容到頁(yè)面,則需要在對(duì)應(yīng)的方法上加上
@ResponseBody注解。?請(qǐng)思考@RestController與@Controller的區(qū)別4.應(yīng)用程序的App類@SpringBootApplicationpublic
class
Ch51Application
{public
static
void
main(String[]
args)
{SpringApplication.run(Ch51Application.class,
args);}}上述代碼中使用@SpringBootApplication注解指定該程
序是一個(gè)Spring
Boot應(yīng)用,該注解也是一個(gè)組合注解,相當(dāng)于
@SpringBootConfiguration、@EnableAutoConfiguration和@ComponentScan注解的組合,具體細(xì)節(jié)在第6章講解。
SpringApplication類調(diào)用run方法啟動(dòng)Spring
Boot應(yīng)用。5.運(yùn)行main方法啟動(dòng)Spring
Boot應(yīng)用從控制臺(tái)信息可以看到Tomcat的啟動(dòng)過程、Spring
MVC的加載過程。注意Spring
Boot內(nèi)嵌Tomcat容器,因此Spring
Boot應(yīng)用不需要開發(fā)者配置與啟動(dòng)Tomcat。6.測(cè)試Spring
Boot應(yīng)用啟動(dòng)Spring
Boot應(yīng)用后,默認(rèn)訪問地址為:
http://localhost:8080/,將項(xiàng)目路徑直接設(shè)為根路徑,這是
Spring
Boot的默認(rèn)設(shè)置。因此,我們可以通過
http://localhost:8080/hello測(cè)試應(yīng)用(hello與測(cè)試類
TestController中的@RequestMapping(“/hello”)對(duì)應(yīng))。5.2第一個(gè)Spring
Boot應(yīng)用5.2.1
Maven簡(jiǎn)介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等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 45076-2024再生資源交易平臺(tái)建設(shè)規(guī)范
- GA/T 761-2024停車庫(kù)(場(chǎng))安全管理系統(tǒng)技術(shù)要求
- 工作總結(jié)之黨校進(jìn)修總結(jié)處級(jí)干部黨校培訓(xùn)總結(jié)
- 電工電子技術(shù)(第3版) 課件 1.5 電容
- 2024年固體分散載體材料項(xiàng)目資金籌措計(jì)劃書代可行性研究報(bào)告
- 銀行員工薪酬體系制度
- 銀行客戶關(guān)系管理規(guī)范制度
- 重慶市豐都縣2023-2024學(xué)年八年級(jí)上學(xué)期期末考試數(shù)學(xué)試卷(含答案)
- 《講Scilab基本操作》課件
- 2011世界頂級(jí)名車品時(shí)尚盛宴
- 2024-2025學(xué)年語(yǔ)文二年級(jí)上冊(cè) 部編版期末測(cè)試卷 (含答案)
- 語(yǔ)文修改語(yǔ)病-三年(2022-2024)高考病句試題真題分析及 備考建議(課件)
- 中國(guó)抗癌協(xié)會(huì)胰腺癌患者科普指南2024(完整版)
- 齊魯名家談方論藥 知到智慧樹網(wǎng)課答案
- 2023人工智能基礎(chǔ)知識(shí)考試題庫(kù)(含答案)
- cecs31-2017鋼制電纜橋架工程設(shè)計(jì)規(guī)范
- 小學(xué)語(yǔ)文跨學(xué)科學(xué)習(xí)任務(wù)群的設(shè)計(jì)
- 《敬廉崇潔》的主題班會(huì)
- 國(guó)家開放大學(xué)電大《計(jì)算機(jī)應(yīng)用基礎(chǔ)(本)》終結(jié)性考試試題答案(格式已排好)任務(wù)一
- 增值稅預(yù)繳稅款表電子版
- 學(xué)生學(xué)習(xí)評(píng)價(jià)量表模板
評(píng)論
0/150
提交評(píng)論