mybatis的全域性配置檔案SqlMapConfig.xml解析
mybatis的全域性配置檔案SqlMapConfig.xml
,配置內容如下:
- properties(屬性)
- settings(全域性配置引數)
- typeAliases(型別別名)
- typeHandlers(型別處理器)
- objectFactory(物件工廠)
- plugins(外掛)
- environments(環境集合屬性物件)
environment(環境子屬性物件)
transactionManager(事務管理)
dataSource(資料來源) - mappers(對映器)
1.properties屬性
- 需求
將資料庫連線引數單獨配置在db.properties
中,只需要在SqlMapConfig.xml
中載入db.properties
的屬性值。在SqlMapConfig.xml
中就不需要對資料庫連線引數硬編碼。
將資料庫連線引數只配置在db.properties
中
原因:方便對引數進行統一管理,其它xml可以引用該db.properties
。
在sqlMapConfig.xml載入屬性檔案:
- properties特性:
- 在 properties 元素體內定義的屬性首先被讀取。
- 然後會讀取properties 元素中resource或 url 載入的屬性,它會覆蓋已讀取的同名屬性。
- 最後讀取parameterType傳遞的屬性,它會覆蓋已讀取的同名屬性。
建議:
不要在properties元素體內新增任何屬性值,只將屬性值定義在properties檔案中。
在properties檔案中定義屬性名要有一定的特殊性,如:XXXXX.XXXXX.XXXX
2.settings全域性引數配置
mybatis框架在執行時可以調整一些執行引數。
比如:開啟二級快取、開啟延遲載入。。
全域性引數將會影響mybatis的執行行為。
3.typeAliases型別別名
- 需求:
在mapper.xml
中,定義很多的statement,statement需要parameterType指定輸入引數的型別、需要resultType指定輸出結果的對映型別。
如果在指定型別時輸入型別全路徑,不方便進行開發,可以針對parameterType或resultType指定的型別定義一些別名,在mapper.xml
中通過別名定義,方便開發。 - mybatis預設支援的別名
別名 | 對映的型別 |
---|---|
_byte | byte |
_long | long |
_short | short |
_int | int |
_integer | int |
_double | double |
_float | float |
_boolean | boolean |
string | String |
byte | Byte |
long | Long |
short | Short |
int | Integer |
integer | Integer |
double | Double |
float | Float |
boolean | Boolean |
date | Date |
decimal | BigDecimal |
bigdecimal | BigDecimal |
- 自定義別名
- 單個別名定義
- 引用別名
- 批量別名定義
4.typeHandlers型別處理器
- mybatis中通過typeHandlers完成jdbc型別和java型別的轉換。
通常情況下,mybatis提供的型別處理器滿足日常需要,不需要自定義.
8.mappers對映器
- 通過resource載入單個對映檔案
- 通過mapper介面載入單個mapper
- 批量載入mapper(推薦使用)
相關文章
- 03.MyBatis學習-----全域性配置檔案_properties_引入外部配置檔案MyBatis
- Mybatis 學習筆記(一)——配置檔案SqlMapConfig.xml和對映檔案Mapper.xmlMyBatis筆記SQLXMLAPP
- SpringBoot基礎學習(二) SpringBoot全域性配置檔案及配置檔案屬性值注入Spring Boot
- mybatis原始碼配置檔案解析之五:解析mappers標籤(解析XML對映檔案)MyBatis原始碼APPXML
- 增加程式碼的通用性-解析配置檔案
- Mybatis基礎:Mybatis對映配置檔案,Mybatis核心配置檔案,Mybatis傳統方式開發MyBatis
- mybatis原始碼配置檔案解析之五:解析mappers標籤流程圖MyBatis原始碼APP流程圖
- MyBatis載入配置檔案MyBatis
- MyBatis配置檔案總結MyBatis
- spring和Mybatis的核心配置檔案SpringMyBatis
- vue專案如何全域性引入scss檔案VueCSS
- Benchmarksql的props配置檔案解析SQL
- SpringMvc+Spring+mybatis配置檔案SpringMVCMyBatis
- MyBatis 配置解析MyBatis
- Mybatis配置解析MyBatis
- 原始碼解析Flask的配置檔案原始碼Flask
- MyBatis--主配置檔案詳解MyBatis
- DHCP常用配置檔案解析
- java解析yaml配置檔案JavaYAML
- MyBatis第四章:專案案例mybatis主要配置解析MyBatis
- vue專案中如何全域性引入scss/sass檔案VueCSS
- Vue專案全域性配置微信分享實踐Vue
- Mybatis【配置檔案】就是這麼簡單MyBatis
- 文盤Rust -- 配置檔案解析Rust
- SpringBoot原始碼解析-配置檔案的載入Spring Boot原始碼
- .Net Core中的配置檔案原始碼解析原始碼
- SpringBoot 如何解析配置檔案中的list?Spring Boot
- Angular CLI 全域性 ng.cmd 檔案內容分析Angular
- jQuery Validate全域性配置和例項配置jQuery
- Yarn的安裝和全域性配置(源/快取位置/全域性安裝位置)Yarn快取
- Linux的檔案屬性和目錄配置Linux
- Mybatis:CRUD操作及配置解析MyBatis
- 深入Mybatis原始碼——配置解析MyBatis原始碼
- Mybatis深入解析之日誌配置MyBatis
- 屬性配置檔案詳解(2)
- Spring框架裡解析配置檔案的準確位置Spring框架
- mybatis之sql查詢配置檔案resultType和resultMapMyBatisSQL
- MyBatis 核心配置檔案詳細內容詳解MyBatis