Mybatis基礎(chǔ)操作

準(zhǔn)備工作
準(zhǔn)備數(shù)據(jù)庫表 emp
創(chuàng)建一個(gè)新的springboot工程,選擇引入對(duì)應(yīng)的起步依賴(mybatis、mysql驅(qū)動(dòng)、lombok)
application.properties中引入數(shù)據(jù)庫連接信息
創(chuàng)建對(duì)應(yīng)的實(shí)體類 Emp(實(shí)體類屬性采用駝峰命名)
準(zhǔn)備Mapper接口 EmpMapper

①準(zhǔn)備數(shù)據(jù)庫表 emp
②創(chuàng)建一個(gè)新的springboot工程,選擇引入對(duì)應(yīng)的起步依賴(mybatis、mysql驅(qū)動(dòng)、lombok)


③application.properties中引入數(shù)據(jù)庫連接信息
④創(chuàng)建對(duì)應(yīng)的實(shí)體類 Emp(實(shí)體類屬性采用駝峰命名)
⑤準(zhǔn)備Mapper接口 EmpMapper
環(huán)境準(zhǔn)備好之后,我們就來完成增刪改查操作

刪除
根據(jù)主鍵刪除
接口方法:
測(cè)試:

日志輸出
可以在application.properties中,打開mybatis的日志,并指定輸出到控制臺(tái)。

預(yù)編譯SQL
性能更高
更安全(防止SQL注入)

SQL注入
SQL注入是通過操作輸入的數(shù)據(jù)來修改事先定義好的SQL語句,以達(dá)到執(zhí)行代碼對(duì)服務(wù)器進(jìn)行攻擊的方法。

就可以進(jìn)入到后臺(tái)管理系統(tǒng)

參數(shù)占位符



新增
接口方法:
測(cè)試:

新增(主鍵返回)
描述:在數(shù)據(jù)添加成功后,需要獲取插入數(shù)據(jù)庫數(shù)據(jù)的主鍵。如:添加套餐數(shù)據(jù)時(shí),還需要維護(hù)套餐菜品關(guān)系表數(shù)據(jù)。

修改
接口方法:
測(cè)試:

查詢
根據(jù)ID查詢
接口方法:
測(cè)試:

數(shù)據(jù)封裝
實(shí)體類屬性名 和 數(shù)據(jù)庫表查詢返回的字段名一致,mybatis會(huì)自動(dòng)封裝。
如果實(shí)體類屬性名 和 數(shù)據(jù)庫表查詢返回的字段名不一致,不能自動(dòng)封裝。

方式一:
起別名:在SQL語句中,對(duì)不一樣的列名起別名,別名和實(shí)體類屬性名一樣。

方式二:
手動(dòng)結(jié)果映射:通過 @Results及@Result 進(jìn)行手動(dòng)結(jié)果映射。

方式三:
開啟駝峰命名:如果字段名與屬性名符合駝峰命名規(guī)則,mybatis會(huì)自動(dòng)通過駝峰命名規(guī)則映射。(推薦)

查詢(條件查詢)
接口方法(不推薦):

推薦寫法:
測(cè)試:

參數(shù)名說明
在springBoot的2.x版本

在springBoot的1.x版本/單獨(dú)使用mybatis
