本周深入學習了 MyBatis 框架的使用與配置,收獲頗豐。
完成了對 MyBatis 框架的 Junit 測試,實現了添加、刪除、修改和查詢功能。重點學習了如何通過配置 resultType 或 resultMap 將數據庫查詢結果轉化為 Java 對象。同時,了解了 MyBatis 核心配置文件的結構,包括 properties、typeAliases、environments、transactionManager 和 mappers 等標簽的用途及書寫順序,并建立了配置文件和映射文件的模板。
繼續深入學習 MyBatis 的增刪查改操作,掌握了獲取參數值的兩種方式:${}和#{}。其中${}是字符串拼接,需要手動加單引號;#{}是占位符賦值,可自動添加單引號。還學習了使用@Param標識參數,以及在特殊 SQL 中使用${}的場景。
學習了解決字段名和屬性名不一致的三種方法:為字段起別名、設置全局配置自動映射為駝峰,以及通過 resultMap 設置自定義映射關系。詳細掌握了 resultMap 的配置,包括 id、type、id 子標簽和 result 子標簽的使用。
學習了多對一和一對多映射關系的處理。多對一可通過級聯方式、association 標簽或分布查詢實現,其中分布查詢支持延遲加載。一對多則通過 collection 標簽和分布查詢實現。同時,了解了分步查詢的優點以及延遲加載的配置。
學習了 MyBatis 的動態 SQL 技術,包括 if、where、trim、choose、when、otherwise 和 foreach 等標簽的使用。這些標簽能夠根據條件動態拼接 SQL,使 SQL 更靈活、高效。
通過本周的學習,我對 MyBatis 框架的使用和配置有了更深入的理解,掌握了其核心功能和高級特性,為后續的項目開發打下了堅實的基礎。