詳細(xì)SpringBoot框架教程——初始springboot

本篇文章主要內(nèi)容
What is SpringBoot?
SpringBoot開發(fā)運(yùn)行環(huán)境要求
springboot程序的幾種創(chuàng)建方式
SpringBoot開發(fā)java程序
SpringBoot開發(fā)web程序
SpringBoot main方法分析
SpringBoot項(xiàng)目約定的代碼結(jié)構(gòu)
SpringBoot 項(xiàng)目pom.xml繼承結(jié)構(gòu)
SpringBoot 項(xiàng)目pom.xml修改默認(rèn)版本
SpringBoot 整合mybatis
SpringBoot 整合jsp視圖展示(也支持一些模板技術(shù))
SpringBoot 項(xiàng)目pom.xml熱部署插件devtools
JRebel (這是idea插件,收費(fèi)的,需要破解)
What is SpringBoot?
源自官網(wǎng):https://spring.io/projects/spring-boot?

Spring Boot使開發(fā)獨(dú)立的,產(chǎn)品級別的基于Spring的應(yīng)用?變得非常簡單,你只需"just run";
我們?yōu)镾pring平臺及第三方庫提供開箱即用的設(shè)置,這樣你就可以有條不紊地開始,多數(shù)Spring Boot應(yīng)用需要很少的Spring配置;
特性:
創(chuàng)建獨(dú)立的Spring應(yīng)用程序;
直接嵌入Tomcat,Jetty或Undertow(無需部署WAR文件);
提供自以為是的“starter”依賴項(xiàng),以簡化構(gòu)建配置;
盡可能自動配置Spring和3rd Party庫;
提供可用于生產(chǎn)環(huán)境的功能,例如指標(biāo),運(yùn)行狀況檢查和外部化配置;
完全沒有代碼生成,也不需要XML配置;
Github:https://github.com/spring-projects/spring-boot?

通過Spring Boot,你可以輕松創(chuàng)建具有基于Spring的生產(chǎn)級應(yīng)用程序和服務(wù),而不必花太多功夫,SpringBoot是基于SpringFramework框架的,以便于新老用戶都能快速上手。你可以使用Spring Boot創(chuàng)建獨(dú)立的Java應(yīng)用程序,然后通過java -jar運(yùn)行,或者創(chuàng)建web項(xiàng)目,通過WAR部署啟動,同時(shí)SpringBoot還提供了運(yùn)行Spring腳本的命令行工具;
SpringBoot的主要目標(biāo)是:
為所有Spring開發(fā)提供根本上更快速的入門開發(fā)體驗(yàn)(開發(fā)更快更方便);
開箱即用,隨著需求的變化,SpringBoot幫我們解決了很多常見的問題,比如快速集成其他組件;
提供一系列大型項(xiàng)目通用的非功能性功能(例如嵌入式服務(wù)器,安全性,性能指標(biāo),運(yùn)行狀況檢查,外部化配置)完全沒有代碼生成,也不需要XML配置;
總結(jié)一下就是:Spring家族推出springboot框架就是為了簡化spring的配置與開發(fā),使得在基于Spring框架的開發(fā)中開發(fā)起來更快速更方便,簡化或減少相關(guān)的配置,提高開發(fā)效率;
SpringBoot開發(fā)環(huán)境
1、Spring Boot目前分為兩大版本系列,?1.x系列和2.x系列,目前 Spring Boot 最新正式版為2.3.1.RELEASE;
2、如果是使用eclipse開發(fā),推薦安裝 Spring Tool Suite (STS) 插件;
3、如果使用 IDEA 旗艦版,自帶了SpringBoot插件;
4、推薦使用 Java 8,Spring boot 1.x系列的版本兼容 Java 6,Spring boot 2.x系列需要至少Java?8;
5、Springboot2.X推薦使用 Maven 3.3+,太低的Maven版本會報(bào)錯(cuò),Maven目前最新版本為 3.6.3;http://maven.apache.org?

SpringBoot Java Application

如何修改啟動的logo日志:
在src/main/resources放入banner.txt文件
將新的logo文字粘貼到banner.txt文件中即可;
?
在 Spring Boot 框架中,要?jiǎng)?chuàng)建一個(gè)純Java程序:
方式一:
1、SpringBoot開發(fā)純Java程序,應(yīng)該采用如下的起步依賴:

2、直接在main方法中,根據(jù)SpringApplication.run()方法獲取返回的Spring容器對象,再獲取業(yè)務(wù)bean進(jìn)行調(diào)用;

方式二:
1、SpringBoot開發(fā)純Java程序,應(yīng)該采用如下的起步依賴:

2、Spring boot 的入口類實(shí)現(xiàn)CommandLineRunner接口;
3、覆蓋CommandLineRunner接口的run()方法,run方法中編寫具體的處理邏輯即可;

從SpringMVC到SpringBoot
我們通過一個(gè)案例,學(xué)習(xí)和掌握SpringBoot的開發(fā);
創(chuàng)建SpringBoot項(xiàng)目
方式一:
采用IDEA 自帶的插件創(chuàng)建?或者 使用eclipse的Spring Tool Suite (STS) 插件創(chuàng)建;(url路徑有兩個(gè)選擇)
Spring官方:https://start.spring.io/?
阿里云:https://start.aliyun.com/?
方式二:
直接使用 Maven 創(chuàng)建項(xiàng)目的方式創(chuàng)建,然后手動添加依賴;(無網(wǎng)絡(luò)的情況下)
Springboot項(xiàng)目結(jié)構(gòu)及Maven依賴
也是一個(gè)標(biāo)準(zhǔn)的maven結(jié)構(gòu),多了一個(gè)前端模板技術(shù)的static和template文件夾;
SpringBoot項(xiàng)目使用JSP
在Spring boot中使用jsp,按如下步驟進(jìn)行:
1、在pom.xml文件中配置依賴項(xiàng)

2、在application.properties文件配置spring mvc的視圖展示為jsp:
spring.mvc.view.prefix=/
spring.mvc.view.suffix=.jsp
3、在src/main 下創(chuàng)建一個(gè)webapp目錄,然后在該目錄下新建jsp頁面
4、Maven的pom.xml中配置頁面編譯位置

SpringBoot集成MyBatis
Spring boot 集成 MyBatis的步驟如下:
1、在pom.xml中配置相關(guān)jar依賴;

2、在Springboot的核心配置文件application.properties中配置數(shù)據(jù)源:
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://192.168.172.128:3306/workdb?
serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&useSSL=false
3、通過mybatis反向工程生成mapper接口和model類;
4、在MyBatis的Mapper接口中添加@Mapper注解;
或者 在運(yùn)行的主類上添加
@MapperScan("com.bjpowernode.mapper") 注解包掃描;
5、接下來就是按照ssm框架的方式編寫代碼即可;
注意:Idea當(dāng)你從其他地方粘貼一個(gè)文件過來的時(shí)候,它往往是不編譯的,需要手動編譯;
SpringBoot增刪改查
和原來的Ssm項(xiàng)目開發(fā)一致;
SpringBoot項(xiàng)目熱部署插件
熱部署是指當(dāng)我們修改代碼后,服務(wù)能自動重啟加載新修改的內(nèi)容,這樣大大提高了我們開發(fā)的效率;
Spring boot熱部署通過添加一個(gè)插件實(shí)現(xiàn);
插件為:spring-boot-devtools,在Maven中配置如下:

該熱部署插件在實(shí)際使用中會有一些小問題,特別是分布式開發(fā),比如dubbo開發(fā)框架,有點(diǎn)問題,需要手動重啟;
Idea之JRebel熱部署插件
Jrebel是一個(gè)收費(fèi)插件,需要破解,該插件可以實(shí)現(xiàn)熱部署,具體破解可以參考網(wǎng)上的一些方法:
1、首先生成一個(gè)GUID,可以用該網(wǎng)址生成:https://www.guidgen.com/?
2、用該網(wǎng)址https://jrebel.qekang.com/ + 生成的 GUID 激活;
例如:
https://jrebel.qekang.com/0b2e2ca8-6dde-47a9-b9da-f74c7e5bcff2
3、在Idea中設(shè)置為離線模式,來防止失效;
File -> Settings -> JRebel -> [Work offline]?按鈕點(diǎn)一下;
如果想更深入的學(xué)習(xí)springboot,奉上springboot全套視頻教程,視頻學(xué)習(xí)效果更佳,走過路過別忘素質(zhì)三連哦~~

