導(dǎo)航
[React 從零實(shí)踐01-后臺(tái)] 代碼分割
[React 從零實(shí)踐02-后臺(tái)] 權(quán)限控制
[React 從零實(shí)踐03-后臺(tái)] 自定義hooks
[React 從零實(shí)踐04-后臺(tái)] docker-compose 部署react+egg+nginx+mysql
[React 從零實(shí)踐05-后臺(tái)] Gitlab-CI使用Docker自動(dòng)化部署
[源碼-webpack01-前置知識(shí)] AST抽象語(yǔ)法樹(shù)
[源碼-webpack02-前置知識(shí)] Tapable
[源碼-webpack03] 手寫webpack - compiler簡(jiǎn)單編譯流程
[源碼] Redux React-Redux01
[源碼] axios
[源碼] vuex
[源碼-vue01] data響應(yīng)式 和 初始化渲染
[源碼-vue02] computed 響應(yīng)式 - 初始化,訪問(wèn),更新過(guò)程
[源碼-vue03] watch 偵聽(tīng)屬性 - 初始化和更新
[源碼-vue04] Vue.set 和 vm.$set
[源碼-vue05] Vue.extend
[源碼-vue06] Vue.nextTick 和 vm.$nextTick
[部署01] Nginx
[部署02] Docker 部署vue項(xiàng)目
[部署03] gitlab-CI
[數(shù)據(jù)結(jié)構(gòu)和算法01] 二分查找和排序
[深入01] 執(zhí)行上下文
[深入02] 原型鏈
[深入03] 繼承
[深入04] 事件循環(huán)
[深入05] 柯里化 偏函數(shù) 函數(shù)記憶
[深入06] 隱式轉(zhuǎn)換 和 運(yùn)算符
[深入07] 瀏覽器緩存機(jī)制(http緩存機(jī)制)
[深入08] 前端安全
[深入09] 深淺拷貝
[深入10] Debounce Throttle
[深入11] 前端路由
[深入12] 前端模塊化
[深入13] 觀察者模式 發(fā)布訂閱模式 雙向數(shù)據(jù)綁定
[深入14] canvas
[深入15] webSocket
[深入16] webpack
[深入17] http 和 https
[深入18] CSS-interview
[深入19] 手寫Promise
[深入20] 手寫函數(shù)
[深入21] 數(shù)據(jù)結(jié)構(gòu)和算法 - 二分查找和排序
[深入22] js和v8垃圾回收機(jī)制
[深入23] JS設(shè)計(jì)模式 - 代理笨腥,策略翻诉,單例
[前端學(xué)java01-SpringBoot實(shí)戰(zhàn)] 環(huán)境配置和HelloWorld服務(wù)
[前端學(xué)java02-SpringBoot實(shí)戰(zhàn)] mybatis + mysql 實(shí)現(xiàn)歌曲增刪改查
(一) 前置知識(shí)
(1) 一些單詞
legal 法律
profile 配置文件
paste 粘貼
(2) IDEA如何自動(dòng)的導(dǎo)入需要的注解堵未?
-
setting
-> 搜索auto import
(3) IDEA如何新建一個(gè)文件夾栅隐,然后在改文件夾中創(chuàng)建一個(gè)class辉懒?
(二) 環(huán)境配置
(1) 安裝及教程相關(guān)連接
(2) 注意事項(xiàng)
-
JDK8相關(guān)
- java8安裝完成后清女,需要配置 ( 環(huán)境變量 ) 和 ( Path )
- java8-JDK8的環(huán)境變量配置
- 我的電腦 => 高級(jí)系統(tǒng)設(shè)置 => 高級(jí) => 環(huán)境變量 => 系統(tǒng)變量 => 新建 => JAVA_HOME
變量名:JAVA_HOME
-
變量值:bin文件夾所在的全路徑
比如 C:\Program Files\Java\jdk1.8.0_211
- jva8-JDK8的Path配置
- 我的電腦 => 高級(jí)系統(tǒng)設(shè)置 => 高級(jí) => 環(huán)境變量 => 系統(tǒng)變量 => path =>
%JAVA_HOME%\bin
- 我的電腦 => 高級(jí)系統(tǒng)設(shè)置 => 高級(jí) => 環(huán)境變量 => 系統(tǒng)變量 => path =>
- 如何測(cè)試java8的環(huán)境變量安裝成功钱烟?如何驗(yàn)證path
- cmd 中輸入
java -version
獲取到相關(guān)信息即安裝成功 - cmd 中輸入
echo %JAVA_HOME%
查看環(huán)境變量的Path
- cmd 中輸入
- java8-JDK8的環(huán)境變量配置
- java8安裝完成后清女,需要配置 ( 環(huán)境變量 ) 和 ( Path )
-
maven相關(guān)
- 配置修改
- 下載解壓后需要配置maven,即修改
D:\javaconfig\apache-maven-3.6.3\conf\setings.xml
文件 - 具體修改三個(gè)地方
-
<localRepository></localRepository>
- 本地倉(cāng)庫(kù)嫡丙,設(shè)置為自己本地的文件夾中拴袭,這樣本地有jar包時(shí)就不用每次去下載
- maven項(xiàng)目創(chuàng)建好后,需要jar包曙博,先從本地倉(cāng)庫(kù)找拥刻,沒(méi)找到再去中央倉(cāng)庫(kù)或私服中去下載
-
<mirrors><mirror></mirror></mirrors>
- 鏡像
- 配置國(guó)內(nèi)鏡像,加快下載速度
-
<profiles><profile></profile></profiles>
- 讓maven指定jdk1.8來(lái)進(jìn)行編譯
-
- 下載解壓后需要配置maven,即修改
- maven環(huán)境變量設(shè)置
變量名:M2_HOME
-
變量值:bin文件夾所在的全路徑
比如 D:\javaconfig\apache-maven-3.6.3
- maven的Path設(shè)置
- 我的電腦 => 高級(jí)系統(tǒng)設(shè)置 => 高級(jí) => 環(huán)境變量 => 系統(tǒng)變量 => path =>
%M2_HOME%\bin
- 我的電腦 => 高級(jí)系統(tǒng)設(shè)置 => 高級(jí) => 環(huán)境變量 => 系統(tǒng)變量 => path =>
- 驗(yàn)證maven是否配置成功
- cmd 中輸入
mvn -version
- cmd 中輸入
echo %M2_HOME%
- cmd 中輸入
- 配置修改
-
IDEA上設(shè)置maven相關(guān)如下圖
maven setings.xml
------
<localRepository>D:/javaconfig/m2/repos</localRepository>
<mirrors>
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
</mirrors>
<profiles>
<profile>
<id>jdk-1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
</profiles>
-
java
-
maven
(三) 實(shí)現(xiàn)一個(gè)hello-world
- 瀏覽器發(fā)送get請(qǐng)求父泳,服務(wù)器響應(yīng) 'helloworld' 字符串
- 官方文檔
(1) 在 ( pom.xml ) 配置文件中添加 ( parent ) 和 ( dependencies )
- parent:作用是做依賴管理般哼,父項(xiàng)目中聲明了常用的依賴的版本號(hào),子項(xiàng)目繼承后就不需要寫 ( 依賴的版本號(hào) ) 了
-
如何修改依賴指定的版本號(hào):
- 1.
查看parent => spring-boot-starter-parent => spring-boot-dependencies 中的當(dāng)前依賴的版本號(hào)的 key
- 2.在當(dāng)前項(xiàng)目中重寫配置惠窄,需要添加
<properties>
然后通過(guò)<mysql.version>
來(lái)修改指定的版本號(hào)
- 3.因?yàn)閙aven采用的是就近優(yōu)先的原則
- 1.
-
starter場(chǎng)景啟動(dòng)器
-
starter
就是場(chǎng)景啟動(dòng)器
- 只要引入starter蒸眠,這個(gè)場(chǎng)景的所有常規(guī)需要的依賴都會(huì)自動(dòng)引入
- 官方starter
spring-boot-starter-*
- 第三方starter
*-spring-boot-starter
- 官方的starter文檔
-
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.4.2</version>
</parent>
// parent
// 1
// parent是父項(xiàng)目,固定寫法
// parent的作用是:做依賴管理杆融,父項(xiàng)目中聲明幾乎所有常用的依賴的版本號(hào)楞卡,子項(xiàng)目繼承后就不需要寫 ( 依賴的版本號(hào) ) 了
// 2
// 問(wèn)題:如果對(duì)parent仲裁的版本不滿意,如果制定依賴的版本號(hào)脾歇?
// 答案:自己聲明一個(gè)<properties>然后通過(guò)<mysql.version>來(lái)修改指定的版本號(hào)
// <properties><mysql.version>5.1.3</mysql.version></properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId> // spring-boot-starter-web
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-autoconfigure</artifactId>
<version>2.4.2</version>
</dependency>
</dependencies>
(2) 就是編寫 HelloController 類
-
@getMapping 和 @requestMapping 的區(qū)別?
@GetMapping是一個(gè)組合注解蒋腮,是@RequestMapping(method = RequestMethod.GET)的縮寫
@RequestMapping可以指定GET、POST請(qǐng)求方式
@GetMapping等價(jià)于@RequestMapping的GET請(qǐng)求方式
@RestController // 是上面兩個(gè)注解的合集
public class HelloController {
// @RequestMapping("/hello") 隱射請(qǐng)求
@RequestMapping(path="/hello", method = {RequestMethod.GET})
public String getHello() {
return "hello request success";
}
}
(3) 編譯測(cè)試藕各,點(diǎn)擊 main 方法的run按鈕進(jìn)行編譯
- 編譯成功會(huì)看到服務(wù)端口等信息
- 可以通過(guò)瀏覽器訪問(wèn)測(cè)試
http://localhost:8080/hello
(四) SpringBoot配置文件 application.properties
- 配置文件
application.properties
- 在
main
文件夾下創(chuàng)建resources
文件夾池摧,再在resources下創(chuàng)建application.properties
文件 -
application.properties
或application.yml
都可以
- 在
- 修改端口
server.port = 8888
- 官方文檔 - 配置文件 - application.properties
application.properties文件
-------
server.port = 8888
(五) 打包部署 fat jars
- 1.在
pom.xml
中添加build
- 2.點(diǎn)擊IDEA右邊的
Maven => hello-world => LifeCycle => clean and package => run
- 3.打包完成后,鼠標(biāo)右鍵激况,
open in explorer
在資源管理器中打開(kāi) - 4.在cmd中執(zhí)行
java -jar hello-world-1.0-SNAPSHOT.jar
maven插件
-------
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
(六) 自動(dòng)配置
- SpringBoot自動(dòng)配好了
SpringMVC
依賴 - SpringBoot自動(dòng)配好了
Tomcat
依賴 - SpringBoot自動(dòng)配好了
web常見(jiàn)的功能作彤,比如字符編碼等
- 按需加載所有自動(dòng)配置項(xiàng)
- 引入了哪些場(chǎng)景膘魄,這些場(chǎng)景的自動(dòng)配置才會(huì)開(kāi)啟
- SpringBoot所有的自動(dòng)配置功能都在
spring-boot-autoconfigure
包里
-
默認(rèn)的包結(jié)構(gòu)
- (
主程序所在的包
) 及其下面的 (所有子包
) 里的組件都會(huì)被默認(rèn) (掃描進(jìn)來(lái)
)
- (
-
那如果就要放在主程序所在包的外面,怎么辦宦棺? - 即改變掃描路徑
- 在主程序的注解上加上
@SpringBootApplication(scanBasePackages = "java.com") 參數(shù)路徑
- 在主程序的注解上加上
2021/05/04更新
mac上java的相關(guān)設(shè)置
(一) jdk8 相關(guān)設(shè)置
(1) 下載 jdk8
- 下載地址
-
選擇 - Java SE Development Kit 8u291 - macOS x64
(2) 查看和設(shè)置 JAVA_HOME
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_291.jdk/Contents/Home
查看和設(shè)置 JAVA_HOME
(1) 在cmd中輸入一下命令
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_291.jdk/Contents/Home
(2) 驗(yàn)證 JAVA_HOME 是否設(shè)置成功
echo $JAVA_HOME
(3) 查看 java 版本
java -version
(4) 相關(guān)教程
https://www.cnblogs.com/godtrue/p/12479919.html
(二) maven 相關(guān)設(shè)置
(1) 下載 Maven3.3+
- 下載地址
- 選擇 download - Binary tar.gz archive - apache-maven-3.8.1-bin.tar.gz
(2) 配置 Maven3.3+
配置 Maven3.3+
(1) 修改maven配置文件 settings.xml
- 文件路徑: /Users/admin/back_end/java/apache-maven-3.8.1/conf/settings.xml
- 具體修改三個(gè)地方
- 1
<localRepository></localRepository>
本地倉(cāng)庫(kù)瓣距,設(shè)置為自己本地的文件夾,這樣本地有jar包時(shí)就不用每次去下載
maven項(xiàng)目創(chuàng)建好后代咸,需要jar包蹈丸,先從本地倉(cāng)庫(kù)找,沒(méi)找到再去中央倉(cāng)庫(kù)或私服中去下載
- 2
<mirrors><mirror></mirror></mirrors>
鏡像
配置國(guó)內(nèi)鏡像呐芥,加快下載速度
- 3
<profiles><profile></profile></profiles>
讓maven指定jdk1.8來(lái)進(jìn)行編譯
- 具體內(nèi)容如下
<localRepository>
/Users/admin/back_end/java/javaconfig/m2/repos
</localRepository>
<mirrors>
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
</mirrors>
<profiles>
<profile>
<id>jdk-1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
</profiles>
(2) 設(shè)置maven相關(guān)的環(huán)境變量
- 1. cmd中輸入 vim ~/.bash_profile 逻杖,輸入 i 進(jìn)入編輯模式
- 2. 添加如下配置
export MAVEN_HOME=/Users/admin/back_end/java/apache-maven-3.8.1
export PATH=$PATH:$MAVEN_HOME/bin
- 3. 輸入 :wq 退出并保存當(dāng)前文件
- 4. 輸入命令:source .bash_profile
- 5. mvn -v
(3) idea上的maven設(shè)置
- 需要設(shè)置
- Maven home path ------- 是maven下載解壓后的文件路徑
- /Users/admin/back_end/java/apache-maven-3.8.1
- user setting file ----- 是maven的配置文件路徑,需要修改 localRepository思瘟,mirror荸百,profile 等
- /Users/admin/back_end/java/apache-maven-3.8.1/conf/settings.xml
- Local repository ------ 是本地倉(cāng)庫(kù)文件夾路徑,將jar包存在本地
- /Users/admin/back_end/java/javaconfig/m2/repos
(3) 新建一個(gè)maven項(xiàng)目
- file - new - project
- project sdk 一定要選擇1.8
- next
- 輸入name 和 location 后點(diǎn)擊 finish
- 點(diǎn)擊 src/main/java 然后會(huì)彈出一個(gè)對(duì)話框
-
注意不建議直接這樣新建maven項(xiàng)目滨攻,而是通過(guò)插件 Spring Assistant 來(lái)新建
-