1. 程式人生 > 其它 >springBoot專案搭建細節筆記

springBoot專案搭建細節筆記

注意:此筆記會持續更新。  

1、在開發某個具體的功能時,應遵循開發順序:持久層-業務層-控制器-前端頁面。

 

2、idea對於JS程式碼的相容性較差,編寫了js程式碼但是有時候不能正常去載入,有以下方法解決:

1)idea快取清理

2)clear - install

3)rebuild重新構建

4)重啟idea和作業系統

 

3、@MapperScan註解指定當前專案中的mapper介面路徑所在的位置,在專案啟動的時候會自動載入所有的mapper介面相當於給每個mapper介面上加@Mapper註解   /  掃描mapper介面所在的包-->包下的所有mapper介面所動態生成的代理類交給IOC容器來管理   

 

16、@Repository     //將一個類或介面標識為一個持久層元件

 

17、在IOC容器中只能存在類所對應的bean,不能存在介面所對應的bean

 

4、xml對映檔案與對應的介面進行關聯。所有的對映檔案需要放在resources目錄下,對映檔案遵循和介面的名稱保持一致

 

5、在對映檔案的insert標籤中,useGeneratedKeys="true":設定當前標籤中sql使用了自增的主鍵;keyProperty="id":將自增的主鍵的值賦給傳輸到對映檔案中引數的某個屬性(這裡賦給了id),sql語句執行完成後,引數的賦值的屬性就會變化 /id不再為null,而是為表中的主鍵id的值

 

6、MyBatis 獲取引數值的兩種方式:${}和 #{}

1)${} 本質字串拼接     / 手動加單引號引入引數 引起sql注入問題

2)#{} 本質佔位符賦值

 

7、編寫sql語句時,注意獲取傳輸過來的值(推薦兩種常用方法)

1)引數是實體類型別的引數,以屬性獲取屬性值

2)使用@Param註解,以註解裡面的值作為鍵 或者使用 param1.param2為鍵 獲取值

 

8、設定全域性配置,將_自動對映為駝峰(實體類中屬性命名規則是駝峰命名法,資料庫中欄位命名方法是_命名法):mapUnderscoreToCamelCase="true"

 

9、解決欄位名和屬性名不一致

a>為欄位起別名,保證和屬性名的一致

b>設定全域性配置,將_自動對映為駝峰
       <setting name="mapUnderscoreToCamelCase" value="true"/>

c>通過resultMap設定自定義的對映關係

 

10、相關概念:ORM(Object Relationship Mapping)物件關係對映

* 物件:Java的實體類物件
* 關係:關係型資料庫 / 二維資料表
* 對映:二者之間的對應關係
*
* Java概念       資料庫概念
* 類                         表
* 屬性                欄位/列
* 物件                 記錄/行

 

11、MyBatis 設定了預設的類型別名 /不區分大小寫

* java.lang.Integer--> int,Integer
* int ---> _int,_Integer
* String --> string
* Map--> map

 

12、查詢功能的標籤必須設定 resultType 或 resultMap   //查詢出來的資料所需要轉化成的**實體類物件的型別/別名

resultType 設定預設的對映關係    (實體類屬性與表中的欄位名保持一致)
resultMap 設定自定義的對映關係 (實體類屬性與表中的欄位名不一致)

 

13、單元測試:每個獨立的層編寫完畢後需要編寫單元測試方法,來測試當前的功能

 

14、 @SpringBootTest

1)替代了spring-test中的@ContextConfiguration註解,目的是載入ApplicationContext,啟動 spring容器。 /  使用 IOC 容器中的元件

2)標識當前的類是一個測試類,不會隨同專案一塊打包

 

15、單元測試方法:可以單獨獨立執行,不用啟動整個專案,可以做單元測試,提升了程式碼的測試效率

1)必須被@Test註解修飾
2)返回值必須是void
3)方法的引數列表不指定任何型別
4)方法的訪問修飾符必須是public