Mybatis-04-配置檔案解析
阿新 • • 發佈:2020-09-19
-
properties(屬性)
-
可以直接引入外部檔案
<properties resource="db.properties"/>
#db.properties
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/mybatis? useSSL=true&useUnicode=true&characterEncoding=UTF-8
username=root
password=root -
如果db.properties中沒有配置username和password,則可以可以在properties中增加一些屬性配置
<properties resource="db.properties">
<property name="username" value="root"/>
<property name="password" value="root"/>
</properties> -
如果兩個配置檔案和properties中存在同一欄位,如:都含有username這個欄位但是值不一樣,優先使用外部配置檔案
-
-
settings(設定)
-
一個配置完整的settings元素的示例如下:
<settings>
1、<!--全域性地開啟或關閉所有對映器配置檔案中已配置的任何快取,有效值true|false,預設true-->
<setting name="cacheEnabled" value="true"/>
2、<!--
延遲載入的全域性開關。
當開啟時,所有關聯物件都會延遲載入。
特定關聯關係中可通過設定 fetchType 屬性來覆蓋該項的開關狀態。
有效值true|false,預設false
-->
<setting name="lazyLoadingEnabled" value="true"/>
3、<!--是否允許單個語句返回多結果集(需要資料庫驅動支援),有效值true|false,預設true-->
<setting name="multipleResultSetsEnabled" value="true"/>
4、<!--
使用列標籤代替列名
實際表現依賴於資料庫驅動,具體可參考資料庫驅動的相關文件,或通過對比測試來觀察
有效值true|false,預設true
-->
<setting name="useColumnLabel" value="true"/>
5、<!--
允許 JDBC 支援自動生成主鍵,需要資料庫驅動支援
如果設定為 true,將強制使用自動生成主鍵
儘管一些資料庫驅動不支援此特性,但仍可正常工作(如 Derby)
有效值true|false,預設false
-->
<setting name="useGeneratedKeys" value="false"/>
6、<!--
指定 MyBatis 應如何自動對映列到欄位或屬性。
NONE 表示關閉自動對映
PARTIAL 只會自動對映沒有定義巢狀結果對映的欄位
FULL 會自動對映任何複雜的結果集(無論是否巢狀)
預設值為PARTIAL
-->
<setting name="autoMappingBehavior" value="PARTIAL"/>
7、<!--
指定發現自動對映目標未知列(或未知屬性型別)的行為。
NONE: 不做任何反應
WARNING: 輸出警告日誌
FAILING: 對映失敗 (丟擲 SqlSessionException)
預設值為NONE
-->
<setting name="autoMappingUnknownColumnBehavior" value="WARNING"/>
8、<!--
配置預設的執行器
SIMPLE 就是普通的執行器
REUSE 執行器會重用預處理語句(PreparedStatement)
BATCH 執行器不僅重用語句還會執行批量更新
預設值為SIMPLE-->
<setting name="defaultExecutorType" value="SIMPLE"/>
9、<!--
設定超時時間,它決定資料庫驅動等待資料庫響應的秒數
有效值為任意正整數 預設未設定 (null)
-->
<setting name="defaultStatementTimeout" value="25"/>
10、<!--
為驅動的結果集獲取數量(fetchSize)設定一個建議值,此引數只可以在查詢設定中被覆蓋。
有效值為任意正整數 預設未設定 (null)
-->
<setting name="defaultFetchSize"
-