1.1 IDEA環境配置
1.1.1 滾輪縮放
1.1.2 設定自動提示
說明: 配置該項之後.自動不區分大小寫.
1.1.3 設定參數提示
說明: 設定之後方法中有參數提示
1.1.4 設定字元集編碼格式
1.1.5 IDEA自動編譯
1.1.6 IDEA配置Maven
檔案: settings檔案 本地倉庫路徑/私服鏡像位址
1.本地倉庫路徑: 路徑注意操守
<!-- localRepository| The path to the local repository maven will use to store artifacts.|| Default: ${user.home}/.m2/repository -->
<!--定義本地倉庫路徑 如果pom.xml檔案,則切換本地倉庫-->
<localRepository>D:\Java\repository</localRepository>
<!-- interactiveMode
2.私服鏡像伺服器位址
<!--阿裡雲鏡像-->
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>*</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
3.配置Maven
1.1.7 LomBok插件
自行檢查是否安裝lombok插件
2 SpringBoot 基本用法
2.1 建立SpringBoot項目
2.1.1 根據插件建立項目
2.1.2 添加依賴
說明: 隻勾選web即可.
2.1 關于POM.xml檔案報錯說明
2.1.1 parent檔案報錯
2.1.2 依賴插件報錯
2.2 關于POM.xml檔案說明
2.2.1 mave坐标說明
<!--項目maven的基本資訊
坐标:1.組ID 公司域名倒着寫
2.項目名稱 名稱不能重複,不能數字開頭
3.項目版本 1.1.1 1.2.1
坐标意義:1.主要用來管理/區分項目
2.項目打包的路徑就是坐标的位置
-->
<groupId>com.jt</groupId>
<artifactId>springboot-demo1</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>springboot-demo1</name>
<description>Demo project for Spring Boot</description>
2.2.2 mave 指令
正常用法:
- 配置maven環境變量
-
通過dos指令視窗 執行指令. 幾乎不用
IDEA插件方式:
1.clean 清空項目編譯之後的檔案class(位于target目錄中)
2.install 将項目中的target中的class進行打包 xxx.jar包
3.install時會将測試類一同打包.是以需要注意代碼正确性.
跳過測試類打包
<properties>
<java.version>1.8</java.version>
<!--跳過測試類打包-->
<skipTests>true</skipTests>
</properties>
2.2.3 maven打包沒有生成target目錄的說明
如果遇到上述的錯誤,則去本地倉庫中根據項目路徑 查找jar包. 删了重新下載下傳
2.2.4 parent标簽作用
<!--
定位: SpringBoot主要的作用整合SSM,使得架構的使用更加簡化
原則: "開箱即用"
parent主要的作用:
1.SpringBoot在内部相容了當下幾乎所有的第三方架構
2.SpringBoot官網已經将所有相容的版本進行了定義
(幾乎解決了版本沖突問題)以後幾乎不寫版本号
概括: parent标簽中管理其他的項目版本資訊.
-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.5.2</version>
<relativePath/>
</parent>
2.2.5 dependency說明
<!--原則: 按需導入 -->
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<!--springboot啟動項(器)在包的内部SpringBoot
已經完成了項目的"整合"(配置) 使用者拿來就用
web導入SpringMVC
-->
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
2.2.6 插件說明
<!--SpringBoot項目與Maven整合的一個插件
可以通過插件 執行項目打包/測試/文檔生成等操作
注意事項: 該插件不能省略
項目釋出時: java -jar xxxx.jar 報錯:沒有主清單資訊!!!!
-->
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>2.5.2</version>
</plugin>
</plugins>
</build>
3 SpringBoot 進階用法
3.1 關于配置檔案文法說明
3.1.1 properties 文法說明
#資料結構: KEY-VALUE
#資料類型: String類型/Number數值
#文法: 1.key-value使用=号連接配接
# 2.不需要添加多餘的""号
# 3.pro檔案在IDEA中的編碼格式UTF-8(手動可改)
# pro檔案在被程式讀取時預設采用ISO-8859-1格式,中文必定亂碼
# 4.key=value不要出現多餘的空格
server.port=8090
3.1.2 YML 文法說明
#資料結構 key-value
#資料類型 String/Number
#文法:
# 1.key:(空格)value
# 2.key與key之間有層級關系,注意縮進
# 3.字元編碼都采用UTF-8
# 4.可讀性較pro檔案 更加友好
server:
port: 8090
3.2.2 YML為屬性指派
業務需求
說明: 如果将資料直接寫死到.java檔案中,如果需要修改,則重新編譯打包.不友善.如何優化??
優化: 通過配置檔案動态為屬性指派!!!
3.2.2.1 編輯YML配置檔案
說明: Spring負責管理YML檔案中的資料.
3.2.2.2 Controller為屬性指派
package com.jt.controller;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.PropertySource;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
/*@ResponseBody 可以将對象轉化為JSON串
*2.如果傳回值為String類型,則傳回String本身
* JS是JSON串
* */
@ResponseBody
@RestController
@RequestMapping("hi")
@CrossOrigin
//spring 容器啟動時,動态添加配置檔案 一般需要修改字元集
/* 1.必須滿足key-value結構
* 2.如果屬性隻有一個并且是value屬性,可以省略不寫
* 3如果還是亂碼則檢查IDEA pro字元集編碼格式*/
@PropertySource(value = "classpath:/person.properties",encoding = "UTF-8")
public class HelloController {
/*從Spring容器内部為屬性指派
* 文法:spel表達式 ${key}
* */
@Value("${user.day}")
private String day;
@Value("${person.name}")
private String name;
@RequestMapping("get")//http://localhost:8090/hi/get
public String getMsy(){
return "下雨"+day+name;
}
}