關於mybatis,需要掌握的基礎

一樂樂發表於2022-02-20

 

 

目錄

 

 

❀ 總結 mybatis,需要掌握的基礎如下:

1、瞭解ORM 思想、ORM思想的作用、對映配置的兩種方式

2、MyBatis開發流程(基本使用)

3、日誌框架

4、瞭解mybatis生命週期並抽取工具類MyBatisUtil、 MyBatisUtil工具類的作用

5、MyBatis基礎擴充(別名、屬性、結果集對映、Mapper介面、多引數處理、myBatis外掛)

6、註解開發

7、動態SQL

8、物件關聯的查詢【額外的SQL、 內聯對映】和懶載入

9、快取機制(一級快取、二級快取、第三方快取技術redis、ehcache)

10、程式碼生成器MyBatis Generator (MBG)、MBG的作用

11、MyBatis 分頁外掛-PageHelper

❀ 關於mybatis,需要掌握的基礎的詳情如下:

1、瞭解ORM 思想  (Object Relational Mapping)   物件對映關係

2、MyBatis基本使用:

3、日誌框架使用:

4、瞭解myBatis的生命週期並抽取工具類MyBatisUtil

5、MyBatis基礎擴充(別名、屬性、結果集對映、Mapper介面、多引數處理、myBatis外掛)

6、註解開發

7、動態SQL

8、物件關聯的查詢【額外的SQL、 內聯對映】和懶載入(在全域性配置進行設定)

9、快取機制(一級快取、二級快取、第三方快取技術redis、ehcache)

10、程式碼生成器MyBatis Generator (MBG)

11、MyBatis 分頁外掛-PageHelper


 

 

 

❀ 總結 mybatis,需要掌握的基礎如下:

1、瞭解ORM 思想、ORM思想的作用、對映配置的兩種方式

2、MyBatis開發流程(基本使用)

3、日誌框架

4、瞭解mybatis生命週期並抽取工具類MyBatisUtil、 MyBatisUtil工具類的作用

5、MyBatis基礎擴充(別名、屬性、結果集對映、Mapper介面、多引數處理、myBatis外掛)

6、註解開發

7、動態SQL

8、物件關聯的查詢【額外的SQL、 內聯對映】和懶載入

9、快取機制(一級快取、二級快取、第三方快取技術redis、ehcache)

10、程式碼生成器MyBatis Generator (MBG)、MBG的作用

11、MyBatis 分頁外掛-PageHelper

 

 


 

 

 

 

關於mybatis,需要掌握的基礎的詳情如下:

 

1、瞭解ORM 思想  (Object Relational Mapping)   物件對映關係

----為了解決物件導向與關聯式資料庫存在的互相不匹配的問題。 [主要是:物件的屬性名和表的列名不匹配的問題]

 

■ ORM思想:

物件導向概念----(對映配置)-----面向關係概念

​ 類 ---------------------------------表

物件------------------------------表的行(記錄)

屬性------------------------------表的列(欄位)

 

對映配置Mapping:使用註解/xml

 

 

2、MyBatis基本使用:

-----開發流程-拷貝jar包,編寫配置檔案,然後進行測試

 

✿ MyBatis全域性配置檔案內容:

① 屬性配置資訊

② 全域性配置資訊(日誌資訊、)

③ 型別別名

④ 外掛配置資訊

配置環境資訊事務+連線池

關聯對映檔案

 

✿ MyBatis 對映檔案內容:

編寫增刪改查sql,把sql存放到insert| update| delete| select 元素中去

結果集對映:解決表中的列和物件屬性不匹配問題

③ 快取配置

 

■ 測試myBatis執行增刪改查操作:

載入配置檔案

建立會話工廠物件SqlSessionFactory【好比連線池DataSource】

建會話物件SqlSession【好比連線物件Connection】

執行crud操作

關閉資源

 

 

3、日誌框架使用:

-----開發流程-拷貝jar包,編寫日誌配置檔案,然後在mybatis的全域性配置中設定日誌資訊

 

 

4、瞭解myBatis的生命週期並抽取工具類MyBatisUtil

-----抽取MyBatisUtil工具類[作用:是用來建立會話物件Sqlsession]

 

■ 通過factory.openSession() 建立會話物件,預設是不提交事務的方式,可以手動提交

 

 

 

5、MyBatis基礎擴充(別名、屬性、結果集對映、Mapper介面、多引數處理、myBatis外掛)

 

■ 別名:在全域性配置檔案中,配置自定義別名

■ 屬性:properties 屬性配置 [動態引入]

結果集對映:[ 解決表的列名和物件的屬性名不匹配的問題 ]

Mapper 介面:相當DAO 層

多引數處理:使用註解@Param實現處理多個引數

---myBatis預設情況下只能處理一個引數,解決查詢多個引數的方法

■ myBatis外掛:作用是編寫配置檔案有程式碼提示作用

 

 

6、註解開發

 

 

7、動態SQL

  • if
  • choose (when, otherwise)
  • trim (where, set)
  • foreach
  • 其他(bind,sql,include)

 

 

8、物件關聯的查詢【額外的SQL、 內聯對映】和懶載入(在全域性配置進行設定)

■ 總結:多對一、一對多關係的單屬性物件/集合屬性物件,使用association或collection元素?使用額外SQL或內聯查詢?

● 單屬性物件(assoication元素),多表查詢操作會選擇內聯查詢

● 集合屬性物件(collection元素),懶載入會選擇額外SQL處理

 

額外的SQL:會導致N+1 問題

額外的SQL[分步查詢],一般需要進入另外一個頁面展示更加詳細的資訊(懶載入)。

內聯對映[多表查詢],需要在列表中顯示關聯物件的資料,使用內聯對映,否則會出現N+1問題。

 

 

9、快取機制(一級快取、二級快取、第三方快取技術redis、ehcache)

 

 

10、程式碼生成器MyBatis Generator (MBG)

-----MBG [作用:可以根據表生成對應的模型物件、Mapper介面、Mapper檔案,甚至生成 QBC 風格查詢物件。]

 

 

11、MyBatis 分頁外掛-PageHelper

 

相關文章