關於使用tk.mybatis 遇到的坑

tk.mybatis這個第三方插件幫助我們封裝了很多的方法,我們只需要在pom.xml導入相應的依賴即可。在新建的根mapper中繼承相應的接口(Mapper,MysqlMapper等),很多curd包括條件查詢/分頁查詢就不需要我們動手寫相應的sql了,是不是感覺很簡單上手,本人實際使用過程中遇到的坑不少,特此列舉出來,方便各位同學參考,少走彎路.


關於使用tk.mybatis 遇到的坑

該插件已經納入springboot starter 第三方庫

一.啟動類中的註解MapperScan 引入的是tk.mybatis.spring.annotation.MapperScan,而不是之前默認的org.mybatis.spring.annotation.MapperScan,大家一定擦亮眼睛


關於使用tk.mybatis 遇到的坑

二.根Mapper(或者BaseMapper等)一定不能被上述註解MapperScan 掃描到,所以一般將根mapper和其他的mapper區分放在不同的包路徑下,確保啟動不能被掃描到.我這邊是新建的common.mapper包.


關於使用tk.mybatis 遇到的坑

三.其他mapper在繼承根mapper時,填寫對應的泛型一定要與數據庫相應的表一一對應,如果表名和字段與泛型對應的實體類類名,屬性名不一致時,需要使用註解Table和Column做轉換。


關於使用tk.mybatis 遇到的坑

例如,上述圖片中對應的實體類是UserModel,如果不做相應的表映射,tk那邊會默認從user_model 這張表中去獲取數據,也許你的表名不是這個,所以此處就需要標註映射的表名,如下所示。


關於使用tk.mybatis 遇到的坑

當然,字段名如果和實體類的屬性完全一致,則可以忽略不寫註解.


分享到:


相關文章: