MyBatis - 3 - 全局配置文件(properties、typeAliases、environments、databaseIdProvider、mappers...)

總覽

在這裏插入圖片描述

# properties 標籤

mybatis 可以使用 properties 來引入外部 properties 配置文件的內容
如:
resource
url

在這裏插入圖片描述
在這裏插入圖片描述

# settings 標籤

settings 包含了很多重要的設置項

在這裏插入圖片描述

# typeAliases 標籤 + 內置別名

推薦不起別名:使用全類名
別名處理器,可以爲我們的java類型起別名

別名不區分大小寫(MySQL的原因)

默認別名
在這裏插入圖片描述

  • typeAlias:爲某個 java 類型起別名
    type:指定要起別名的類型全類名默認別名就是類名小寫:employee
    alias:指定新的別名
    在這裏插入圖片描述

  • package:爲某個包下所有類批量起別名
    name:指定包名(爲當前包以及下面所有的後代包的每一個類都起一個別名(類名小寫mysql原因,不區分大小寫))
    在這裏插入圖片描述

  • @Alias
    批量起別名的情況下,使用 @Alias 註解爲某個類型指定新的別名
    在這裏插入圖片描述

# typeHandlers 標籤

需要理解 mybatis 原理

在這裏插入圖片描述
JDK1.8後,添加了JSR310

在這裏插入圖片描述

在這裏插入圖片描述


# plugins 標籤

需要理解 mybatis 原理 (後面講)

  • Executor
  • ParameterHandler
  • ResultSetHandler 結果集處理器
  • StatementHandler

# environments 標籤

環境配置
mybatis 可以配置多種環境

environments:環境夢,mybatis可以配置多種環境,default指定使用某種環境,可以達到快速切換環境
environment:配置一個具體的環境信息,必須有兩個標籤,id代表當前環境的唯一表示

  • transactionManager:事務管理器
    • type:事務管理器的類型;JDBC|MANAGED ⇐ 其實都是別名
      JDBC ⇒ JdbcTransactionFactory
      MANAGED ⇒ ManagedTransactionFactory
      或者自定義:實現 TransactionFactory 接口 , type 指定爲全類名
      在這裏插入圖片描述
      在這裏插入圖片描述
  • dataSource 數據源
    type:數據源類型
    • UNPOOLED (UnpooledDataSourceFactory) 不使用連接池
    • POOLED(PooledDataSourceFactory)使用連接池 默認使用
    • JNDI (JndiDataSourceFactory
    • 自定義:實現 DataSourceFactory type 是全類名
      在這裏插入圖片描述
      在這裏插入圖片描述

# databaseIdProvider

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述


一致性
支持多數據庫廠商的
同樣,別名在 configuration 類中查找
在這裏插入圖片描述
type="DB_VENDOR" , VendorDatabaseIdProvider
作用就是得到數據庫廠商的表示(驅動),
mybatis就能根據數據庫廠商表示來執行不同的sql;

實際調用的方法?
java Connection 類 有 getMetaData() 方法,得到 metaData
在這裏插入圖片描述
裏面的 getDataBAseProductName 方法 可以獲取數據庫廠商的名
在這裏插入圖片描述

# mappers

將 sql 映射註冊到全局配置中

在這裏插入圖片描述

註冊配置文件

  • resource :引用類路徑下的 sql 映射文件
    如:mybatis/mapper/EmployeeMapper.xml
  • url:引用網絡路徑或者磁盤路徑下的sql映射文件
    如:file:///var/mappers/AutorMapper.xml

引用(註冊)接口

  • class:
    注意:
    1、如果有sql映射文件,映射文件名必須和接口同名,並且放在與接口同一目錄下【推薦
    在這裏插入圖片描述
    在這裏插入圖片描述
    2、 如果沒有sql映射文件,所有的sql都是利用註解寫在接口上
    在這裏插入圖片描述
    在這裏插入圖片描述
    3、批量註冊
    在這裏插入圖片描述

# 其他標籤

  • 如:objectFactory
  • 等。。。
  • 通常 不怎麼改/ 用

插曲

dtd

在這裏插入圖片描述
在這裏插入圖片描述在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章