MyBatis框架 使用 (一)

一、基本概念和使用步驟

1、MyBatis框架是什麼?

      是一個數據持久層框架,是對JDBC的操作數據庫的封裝。

2、設計理念:

     基於原生的SQL進行設計。

3、MyBatis的優缺點以及應用場景?

優點:

和JDBC相比,減少了代碼量。

MyBatis是最簡單的數據持久化框架,便於學習。

SQL語句寫在XML文件裏,從程序代碼中徹底分離,降低了耦合度。

提供了XML標籤,可以動態的編寫SQL語句。

提供映射標籤,支持對象與數據庫的字段進行關係映射。

缺點:

SQL語句編寫量大,對開發人員的編寫SQL語句功底有要求。

SQL語句依賴於數據庫,所以數據庫的移植性差。

使用場景:

MyBatis專注於SQL本身,是一個靈活的數據層解決方案。

適用於互聯網項目。

4、MyBatis的使用步驟?

1)引入MyBatis的jar包,和對應的數據庫jar包,以及SQL文件。

2)編寫實體類:要求實體類的屬性和數據表字段一一對應。

3)編寫操作數據接口:添加基礎的數據操作方法。

4)編寫實現數據操作的配置文件:要求和對應的接口同名。

5、resultMap的使用?

resultMap是結果集映射標籤,可以將查詢到的複雜類型的數據映射到一個結果集中。

屬性:

id:表示結果集的唯一標識

type:映射結果類型,默認是要配置全類名。

子節點:

id:表示數據表的主鍵對應的實體類的屬性

result:配置其他字段對應的屬性。

子節點屬性:

property:實體類的屬性名。

column:數據庫表的字段名。

二、動態SQL

1、什麼是動態SQL?

使用MyBatis裏面的標籤,對傳入的參數進行判斷,根據結果,對sql語句進行拼接。

2、常用標籤

if標籤:在標籤的test屬性中添加判斷條件。動態sql的核心標籤

where標籤:用於替代sql語句中的where命令。

set標籤:替代sql語句中的set更新命令。

forEach標籤:遍歷集合用的。

choose標籤:相當於java中的switch結構,用於選擇。

when標籤:

otherwise標籤:

3、#{}和${}的區別?

#{} ${}
#將傳入的數據都當成一個字符串,會對自動傳入的數據加一個雙引號 $將傳入的數據直接顯示生成在sql中
可以防止SQL注入 不能防止SQL注入
預編譯sql語句使用?佔位符代替 使用字符串替換
一般優先使用#{} 一般用於傳入數據庫對象,如表名,字段名.
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章