版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
springboot入門(mén)培訓(xùn)2023-12-08目錄springboot概述springboot核心概念springboot開(kāi)發(fā)基礎(chǔ)springboot的web開(kāi)發(fā)springboot的數(shù)據(jù)訪問(wèn)springboot的常用功能springboot的進(jìn)階功能springboot概述0101SpringBoot是一個(gè)基于Java的開(kāi)源框架,它旨在簡(jiǎn)化Spring應(yīng)用程序的創(chuàng)建和部署。02它提供了很多開(kāi)箱即用的功能,例如內(nèi)嵌的Web服務(wù)器(如Tomcat)、自動(dòng)配置、安全管理等。03SpringBoot通過(guò)自動(dòng)配置和約定大于配置的原則,讓開(kāi)發(fā)者能夠快速地構(gòu)建應(yīng)用程序。springboot是什么?易于部署自動(dòng)配置SpringBoot會(huì)根據(jù)項(xiàng)目中的依賴關(guān)系自動(dòng)進(jìn)行配置,減少了手動(dòng)配置的工作量。約定大于配置SpringBoot提供了一些默認(rèn)的約定和模板,減少了開(kāi)發(fā)者需要手動(dòng)配置的內(nèi)容。豐富的插件支持SpringBoot提供了很多插件,方便與其他框架和庫(kù)集成。SpringBoot應(yīng)用程序可以作為獨(dú)立的應(yīng)用程序運(yùn)行,不需要部署到Web服務(wù)器或應(yīng)用服務(wù)器。獨(dú)立運(yùn)行嵌入式Web服務(wù)器SpringBoot內(nèi)嵌了Web服務(wù)器,如Tomcat、Jetty等,可以快速搭建Web應(yīng)用程序。SpringBoot可以很方便地將應(yīng)用程序部署到云平臺(tái)或服務(wù)器上。springboot的特性和優(yōu)勢(shì)SpringBoot適用于構(gòu)建基于Web的應(yīng)用程序,包括傳統(tǒng)的Web應(yīng)用程序和RESTfulAPI。Web應(yīng)用程序SpringBoot適用于構(gòu)建微服務(wù)架構(gòu)的應(yīng)用程序,可以方便地創(chuàng)建獨(dú)立的微服務(wù)。微服務(wù)SpringBoot可以方便地集成其他框架和庫(kù),如Hibernate、Thymeleaf、SpringSecurity等。集成其他框架和庫(kù)SpringBoot提供了一些測(cè)試工具和庫(kù),方便進(jìn)行單元測(cè)試和集成測(cè)試。測(cè)試springboot的應(yīng)用場(chǎng)景springboot核心概念0201默認(rèn)配置SpringBoot提供了許多默認(rèn)配置,可以快速搭建應(yīng)用程序。02自定義配置如果默認(rèn)配置不符合需求,可以通過(guò)配置文件或注解的方式自定義配置。03禁用自動(dòng)配置在某些情況下,可能需要禁用自動(dòng)配置,以避免與現(xiàn)有配置沖突。自動(dòng)配置依賴管理01SpringBoot使用Maven或Gradle作為依賴管理工具,通過(guò)在pom.xml或build.gradle文件中添加依賴,實(shí)現(xiàn)快速構(gòu)建應(yīng)用程序。02起步依賴SpringBoot提供了許多起步依賴,可以幫助您快速搭建應(yīng)用程序。03自定義依賴如果起步依賴不能滿足需求,可以添加自定義依賴。起步依賴配置自定義starter通過(guò)在maven或gradle中添加配置文件,將自定義starter發(fā)布到中央倉(cāng)庫(kù)。使用自定義starter在pom.xml或build.gradle文件中添加自定義starter的依賴,以使用自定義的配置和組件。創(chuàng)建自定義starter創(chuàng)建一個(gè)自定義的starter可以簡(jiǎn)化應(yīng)用程序的構(gòu)建過(guò)程。自定義starterspringboot開(kāi)發(fā)基礎(chǔ)03使用SpringInitializr創(chuàng)建項(xiàng)目<https://start.spring.io/>,選擇需要的依賴項(xiàng),生成Maven或Gradle項(xiàng)目。使用IDE創(chuàng)建項(xiàng)目IntelliJIDEA、Eclipse等IDE都支持SpringBoot項(xiàng)目的創(chuàng)建,只需導(dǎo)入SpringInitializr生成的依賴即可。使用命令行創(chuàng)建項(xiàng)目使用SpringBoot的CLI工具,在命令行中輸入`springboot`,根據(jù)提示創(chuàng)建項(xiàng)目。創(chuàng)建springboot項(xiàng)目01@SpringBootApplication這是一個(gè)復(fù)合注解,包含了@SpringBootConfiguration、@EnableAutoConfiguration和@ComponentScan。02@Configuration標(biāo)記一個(gè)類(lèi)作為Bean定義的來(lái)源,它也能用來(lái)表示該類(lèi)是SpringBoot的配置類(lèi)。@EnableAutoConfiguration啟用SpringBoot的自動(dòng)配置機(jī)制。常用注解的使用02
常用注解的使用@ComponentScanSpring會(huì)自動(dòng)掃描該類(lèi)所在的包以及子包,查找@Component、@Controller等注解的類(lèi),并自動(dòng)注冊(cè)為Bean。@Component表示一個(gè)類(lèi)是Spring組件,Spring會(huì)自動(dòng)創(chuàng)建其實(shí)例并管理其生命周期。@Service標(biāo)記一個(gè)類(lèi)為服務(wù)類(lèi),是@Component的特化版本,用于業(yè)務(wù)邏輯層。標(biāo)記一個(gè)類(lèi)為數(shù)據(jù)訪問(wèn)對(duì)象,用于數(shù)據(jù)訪問(wèn)層。@Repository標(biāo)記一個(gè)類(lèi)為控制器類(lèi),用于處理HTTP請(qǐng)求。@Controller@Controller的特殊版本,簡(jiǎn)化RESTfulAPI的開(kāi)發(fā)。所有方法返回值直接寫(xiě)入HTTP響應(yīng),不再需要顯式地使用responsebody。@RestController常用注解的使用包含全局配置信息,如數(shù)據(jù)庫(kù)連接、端口號(hào)等??梢栽赾onfig目錄下創(chuàng)建不同環(huán)境的配置文件(如perties、perties),SpringBoot會(huì)根據(jù)當(dāng)前的環(huán)境自動(dòng)加載對(duì)應(yīng)的配置文件。同樣用于全局配置信息,但采用YAML格式。同樣可以在config目錄下創(chuàng)建不同環(huán)境的配置文件。pertiesapplication.yml常用配置文件的操作springboot的web開(kāi)發(fā)04定義控制器類(lèi),使用@Controller注解標(biāo)注。在控制器類(lèi)中定義方法,使用@RequestMapping注解標(biāo)注請(qǐng)求路徑,用于處理請(qǐng)求。在方法中編寫(xiě)邏輯代碼,處理請(qǐng)求并返回響應(yīng)數(shù)據(jù)?;A(chǔ)控制器使用@RequestMapping注解標(biāo)注請(qǐng)求路徑,用于處理請(qǐng)求。支持多種類(lèi)型的請(qǐng)求,如GET、POST、PUT、DELETE等??墒褂猛ㄅ浞?,如/api/*,匹配所有以/api/開(kāi)頭的請(qǐng)求路徑。請(qǐng)求映射可使用第三方庫(kù)如jackson2序列化響應(yīng)數(shù)據(jù)為json格式。可使用@ResponseStatus注解標(biāo)注方法返回值,設(shè)置HTTP狀態(tài)碼。使用@ResponseBody注解標(biāo)注方法返回值,將響應(yīng)數(shù)據(jù)直接寫(xiě)入輸出流中。響應(yīng)數(shù)據(jù)格式化springboot的數(shù)據(jù)訪問(wèn)05jdbc訪問(wèn)數(shù)據(jù)庫(kù)在使用JDBC訪問(wèn)數(shù)據(jù)庫(kù)之前,需要配置數(shù)據(jù)源,包括數(shù)據(jù)庫(kù)驅(qū)動(dòng)、數(shù)據(jù)庫(kù)URL、用戶名和密碼等。配置數(shù)據(jù)源JDBC是Java數(shù)據(jù)庫(kù)連接的標(biāo)準(zhǔn)API,提供了連接數(shù)據(jù)庫(kù)和執(zhí)行SQL語(yǔ)句的能力。JDBC概述SpringJdbcTemplate是Spring框架中用于簡(jiǎn)化JDBC操作的類(lèi),提供了對(duì)JDBC的抽象和封裝。使用SpringJdbcTemplateMyBatis概述01MyBatis是一個(gè)優(yōu)秀的持久層框架,通過(guò)XML或注解的方式配置SQL語(yǔ)句,并提供了方便的API接口供Java程序調(diào)用。MyBatis與Spring集成02Spring與MyBatis可以很好地集成,通過(guò)集成后可以簡(jiǎn)化MyBatis的使用。映射文件和映射器03MyBatis需要配置映射文件來(lái)定義SQL語(yǔ)句和結(jié)果集的映射關(guān)系,同時(shí)也可以通過(guò)注解或XML的方式定義映射器。mybatis操作數(shù)據(jù)庫(kù)03事務(wù)傳播行為事務(wù)傳播行為是指一個(gè)事務(wù)對(duì)另一個(gè)事務(wù)的影響,包括嵌套事務(wù)、事務(wù)鏈等。01事務(wù)管理概述事務(wù)是一組數(shù)據(jù)庫(kù)操作的邏輯單元,要么全部成功執(zhí)行,要么全部回滾。02Spring的事務(wù)管理Spring提供了事務(wù)管理功能,可以通過(guò)注解或配置文件的方式進(jìn)行配置。事務(wù)管理springboot的常用功能06SpringBoot支持多種日志級(jí)別,如DEBUG、INFO、WARN和ERROR等,可根據(jù)需要調(diào)整日志輸出級(jí)別。日志級(jí)別日志格式日志輸出通過(guò)配置文件可以自定義日志格式,包括時(shí)間戳、線程名、日志級(jí)別等。SpringBoot支持將日志輸出到控制臺(tái)、文件或遠(yuǎn)程服務(wù)器等,可根據(jù)需要選擇合適的輸出方式。030201日志管理SpringBoot允許開(kāi)發(fā)者自定義異常類(lèi),以便更好地處理業(yè)務(wù)邏輯異常。自定義異常類(lèi)通過(guò)使用@ExceptionHandler注解,可將特定異常映射到指定的處理器方法。異常映射在控制器中返回錯(cuò)誤頁(yè)面,可提供友好的錯(cuò)誤提示信息給用戶。錯(cuò)誤頁(yè)面異常處理123通過(guò)使用SpringSecurity模塊,可實(shí)現(xiàn)用戶認(rèn)證和授權(quán)控制,確保應(yīng)用的安全性。認(rèn)證與授權(quán)SpringBoot支持對(duì)敏感數(shù)據(jù)進(jìn)行加密與解密操作,如密碼、敏感信息等。加密與解密SpringBoot提供了CSRF防護(hù)功能,可防止惡意用戶發(fā)起跨站請(qǐng)求偽造攻擊。防止跨站請(qǐng)求偽造(CSRF)安全管理springboot的進(jìn)階功能07自定義starter的使用創(chuàng)建一個(gè)自定義的Starter,首先需要定義一個(gè)配置類(lèi),并使用@Configuration注解進(jìn)行標(biāo)記,在該類(lèi)中使用@Bean注解定義需要初始化的組件。Starter的使用在自定義的Starter中,可以通過(guò)在配置類(lèi)中定義@EnableAutoConfiguration或@SpringBootApplication注解來(lái)啟用自動(dòng)配置。自定義Starter的配置在自定義的Starter中,可以通過(guò)使用@PropertySource注解來(lái)定義自定義的配置屬性。Starter的創(chuàng)建分布式系統(tǒng)的實(shí)現(xiàn)SpringCloud的引入SpringCloud是一套分布式的微服務(wù)框架,它提供了分布式系統(tǒng)中常見(jiàn)的一些功能的實(shí)現(xiàn),如服務(wù)注冊(cè)與發(fā)現(xiàn)、負(fù)載均衡、熔斷等。服務(wù)注冊(cè)與發(fā)現(xiàn)使用SpringCloud的Eureka或Consul組件,可以實(shí)現(xiàn)服務(wù)的注冊(cè)與發(fā)現(xiàn),讓服務(wù)之間可以相互通信。負(fù)載均衡使用SpringCloud的Ribbon組件,可以實(shí)現(xiàn)服務(wù)的負(fù)載均衡,提高系統(tǒng)的吞吐量。熔斷使用SpringCloud的Hystrix組件,可以實(shí)現(xiàn)服務(wù)的熔斷,防止系統(tǒng)過(guò)載。微服務(wù)架構(gòu)微服務(wù)架構(gòu)是一種將單個(gè)應(yīng)用程序拆分成多個(gè)小型、獨(dú)立的服務(wù)的方式,每個(gè)服務(wù)都運(yùn)行在自己的進(jìn)程中,通過(guò)輕
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 蔬菜種植合作協(xié)議書(shū)范文模板
- 2024年供銷(xiāo)社聘用協(xié)議書(shū)模板
- 吉林師范大學(xué)《中國(guó)現(xiàn)代史》2021-2022學(xué)年第一學(xué)期期末試卷
- 吉林師范大學(xué)《學(xué)前教育學(xué)》2021-2022學(xué)年第一學(xué)期期末試卷
- 2024年大合唱排練合同范本大全
- 軍供食品合作協(xié)議書(shū)范文模板
- 2022年公務(wù)員多省聯(lián)考《申論》真題(河北縣級(jí)卷)及答案解析
- 上海市奉賢區(qū)2023-2024學(xué)年高一年級(jí)上冊(cè)期末考試語(yǔ)文試題及答案
- (浙教2024版)科學(xué)七年級(jí)上冊(cè)3.3 人類(lèi)對(duì)宇宙的探索 課件(共2課時(shí))
- 吉林師范大學(xué)《楷書(shū)理論與技法II》2021-2022學(xué)年第一學(xué)期期末試卷
- 愛(ài)國(guó)主義教育模板下載
- 工字鋼承重表
- 浙江省湖州市安吉縣2023-2024學(xué)年七年級(jí)第一學(xué)期期中科學(xué)階段性檢測(cè)試卷
- JTG-T 3652-2022 跨海鋼箱梁橋大節(jié)段施工技術(shù)規(guī)程
- 骨科健康科普知識(shí)
- 工業(yè)園區(qū)風(fēng)險(xiǎn)分析
- 重癥醫(yī)學(xué)科主任述職報(bào)告
- 中國(guó)特色社會(huì)主義法律體系課件
- 高中數(shù)學(xué)奧賽輔導(dǎo)教材(共十講)
- 警航無(wú)人機(jī)培訓(xùn)考試題庫(kù)大全-下(判斷題)
- 新型冠狀病毒肺炎診療方案第八版
評(píng)論
0/150
提交評(píng)論