MyBatis開發過程
使用原生接口
Mapper代理實作自定義接口
在資料庫Test下建立表
在Idea中建立普通maven工程,pom.xml添加如下依賴
建立實體類Account
@AllArgsConstructor注解自動生成以所有屬性作為參數的構造函數
在resources目錄下建立mybatis配置檔案config.xml,該檔案名任意
建立mapper映射檔案AccountMapper.xml
namespace的值為映射檔案的全路徑名去掉xml擴充名
insert中的id就是對外提供調用的方法名
測試代碼
隻需要做兩件事
自定義接口,定義相關業務方法。
編寫與方法相對應的Mapper.xml
自定義接口
不需要提供實作類,直接提供mapper.xml即可,定義接口方法對應的SQL語句,statement 标簽可根據SQL執行的業務選擇insert、update、delete、select。mybatis會根據規則自動建立接口對應的實作類。
規則:
Mapper.xml中的namespace為接口的全類名
Mapper.xml中statement中的id為接口中對應的方法名
Mapper.xml中的statement的parameterType和接口中對應的方法的參數類型一緻
Mapper.xml中的statement的resultType和接口中對應的方法的傳回值類型一緻
在config.xml中注冊AccountRepository.xml
測試
多條件查詢
接口中定義一個方法
在mapper.xml增加如下statement
由于接口方法中有多個參數傳入,而select中不能設定多個parameterType,索性就不寫了,取而代之的是在SQL語句中用占位符param1和param2代替,進而達到多條件查詢的目的,param名稱也可用arg替換,如:arg1, arg0, param1, param2
級聯查詢
一對多,建表腳本如下: