天天看點

2021-8-20SpringBoot使用注意事項 SpringBoot進階用法GIT操作編輯配置類

GIT操作

git 工作區 緩存區 本地倉庫 遠端倉庫

檢查目前分支git branch

建立分支 git checkout -b 新分支名稱

推送新分支 git push -u origin 新分支名稱-

将檔案添加到暫存區 get add 點

送出代碼 git commit -m "送出資訊"

推動代碼到雲端 git push

合并代碼到主分支 git merge 分支名稱 (主分支中操作)

克隆代碼 git clone "倉庫位址"

将遠端庫的資料更新到本地git pull

Build标簽說明

主啟動類 掃碼代碼中的小啟動類

@SpringBootApplication

@Target({ElementType.TYPE}) 該注解對類有效
@Retention(RetentionPolicy.RUNTIME)該注解在運作期有效
@Documented生成源碼時,是否動态生成注釋文檔
@Inherited 辨別注解可以被繼承
@ComponentScan當springBoot啟動時,會執行個體化很多的對象,但是需要排除特定的類型
@SpringBootConfiguration  ---》@Configuration 配置類、早期配置檔案,告訴springboot這個類是用來整合第三方架構/配置的.

@EnableAutoConfiguration------》》@AutoConfigurationPackage 該注解會動态的擷取主啟動類目前的包路徑,之後開啟包掃描的機制

知識點: 以後寫代碼都應該在主啟動類的同包及子包中.

[email protected]({AutoConfigurationImportSelector.class})開箱即用的思想,使用者引入jar包,可以減少配置,根據依賴資訊掃描加載進來的啟動器      

  熱部署和Lombok

<!--支援熱部署 -->

<dependency>

    <groupId>org.springframework.boot</groupId>

    <artifactId>spring-boot-devtools</artifactId>

</dependency>

快捷鍵: ctrl + shift +alt + / 或者 ctrl + alt + a

        <!--引入插件lombok 自動的set/get/構造方法插件  -->

        <dependency>

            <groupId>org.projectlombok</groupId>

            <artifactId>lombok</artifactId>

        </dependency>

lombok使用需要提前按照lombok插件!如果項目釋出在Linux系統中,問:系統是否需要提前按照插件?

答案:不需要 因為lombok插件在編譯期有效!!!

xxx。java檔案編譯為xxx。class檔案。。寫的是java源碼, 運作的是編譯後的.class

//标準寫法

//知識點: 為什麼需要添加無參構造???

//       利用反射機制執行個體化對象時,預設調用無參構造

@Data //get/set/toString/equals/hashcode

@NoArgsConstructor //無參構造

@AllArgsConstructor//全參構造

@Accessors(chain = true)

public class User implements Serializable {

    private Integer id;

    private String name;

    //鍊式加載的底層原理 傳回User對象

}

   注解的作用

IOC管理對象的方式

Spring如何管理對象

資料結構:Map集合 KV結構

@Configuration [email protected](被spring管理的對象)

key:對象的ID

value:執行個體化之後的對象

@RestController      

key:首字母小寫

編輯配置類

@SpringBootTest      

Spring容器隻有一個,當測試類執行時,會根據SpringBoot的配置動态啟動容器

當spring容器啟動時,會加載所有的注解和配置類,最終将所有的對象交給Spring管理

通過這個注解,可以動态獲得容器中的對象

注入方式:

        類型注入  預設規則

        名稱注入  加上 @Qualifier(“user”) 容器查找key