日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

插件properties_Mybatis3系列 - 4. mybatis-config的properties属性详解

發布時間:2025/3/8 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 插件properties_Mybatis3系列 - 4. mybatis-config的properties属性详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前兩章簡單的講解了MyBatis的使用方式. 接下來先全局的說一下MyBatis的全局的xml配置詳細說明.

XML格式定義

-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">

configuration 的映射文件(根據定義順序說明)

  • properties 屬性
  • settings 設置
  • typeAliases 類型別名
  • typeHandlers 類型處理器
  • objectFactory 對象工廠
  • objectWrapperFactory MyBatis對基本類型, 基本對象map和集合的封裝.
  • reflectorFactory 反射模塊工廠
  • plugins 插件
  • environments 環境配置
  • databaseIdProvider 數據庫廠商標識
  • mappers 映射器

properties 屬性

這些屬性都是可外部配置且可動態替換的,既可以在典型的 Java 屬性文件中配置,也可通過 properties 元素的子元素來傳遞。例如:

properties中的 resource 是根據項目查找, 所以config.properties 所在目錄如下圖所示:

引用的config.properties內容如下:

這里使用組合使用的方式主要是為了能夠演示properties的使用方式, 在真正使用的時候, 直接引入config.properties就可以了. 這樣在真正的和Spring做搭建的時候提供了便利.

在MyBatis的config中使用方式如下圖:

測試代碼(UserMapperTest):

測試通過:

需要注意配置的加載順序, 按照以下來加載。

  • 在 properties 元素體內指定的屬性首先被讀取。
  • 然后根據 properties 元素中的 resource 屬性讀取類路徑下屬性文件或根據 url 屬性指定的路徑讀取屬性文件,并覆蓋已讀取的同名屬性。
  • 最后讀取作為方法參數傳遞的屬性,并覆蓋已讀取的同名屬性。也就是Java代碼配置的方式。

因此,通過方法參數傳遞的屬性具有最高優先級,resource/url 屬性中指定的配置文件次之,最低優先級的是 properties 屬性中指定的屬性。

從 MyBatis 3.4.2 開始,你可以為占位符指定一個默認值。使用范例如下:

這個特性默認是關閉的。如果你想為占位符指定一個默認值, 你應該添加一個指定的屬性來開啟這個特性。例如:

創建對應的配置文件(config.properties)和 dot-mybatis-config.xml 代碼如下:

編寫測試程序(DotUserMapperTest), 代碼如下:

準備測試, 測試通過。

就是你要的效果。 可以嘗試輸入一些錯誤的配置, 看一下效果。

注意:因為“:”是允許設置成name值得, 所以想開啟上面的配置, 就需要修改默認的分隔符。

使用的時候就需要使用, 這里的db:username是一個property的name值

案例說明:

這里如果使用了db:username為name值, 就會出現如下的錯誤信息:

從錯誤信息看, 應該是使用默認的“:”進行分割的。 模擬代碼就是通過字符匹配到第一個“:”, 然后截取對應的字符串。源碼如下:

所以我們就需要配置自定義的分隔符(separator-mybatis-config.xml)。

測試代碼(SeparatorUserMapperTest):

測試結果為, 測試成功

這里給點建議, 把上面的例子都自己動手做一邊, 多修改修改數據,不用管對錯, 先運行起來看看, 這樣你除了能夠看到如何正確配置之外,也能看到配置錯誤之后, 錯誤的信息是什么。 看的錯誤多了, 你也就成了別人眼里能夠解決問題的大牛了。 你想成為大牛嗎?

關注我, 感謝感謝。

全部代碼已經上傳到Github

GitHub地址: https://github.com/xymiao/mybatis3

本篇代碼地址: https://github.com/xymiao/mybatis3/tree/master/mybatis3_03_mybatis_config_properties

總結

以上是生活随笔為你收集整理的插件properties_Mybatis3系列 - 4. mybatis-config的properties属性详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。