MyBatis-Plus的yml配置方式小結(jié)
更新時(shí)間:2023年11月24日 09:56:36 作者:Mr.D.Chuang
本文主要介紹了MyBatis-Plus的yml配置方式,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
MyBatis-Plus yml配置
spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver username: root password: root url: jdbc:mysql://localhost:3306/myInfo?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull # 初始化時(shí)建立的物理連接數(shù)。初始化發(fā)生在顯式調(diào)用init方法,或者第一次getConnection時(shí). initial-size: 5 # 連接池最大物理連接數(shù)量。 max-active: 50 # 連接池最小物理連接數(shù)量。 min-idle: 5 # 獲取連接時(shí)最大等待時(shí)間,單位為毫秒。 # 配置之后,缺省啟用公平鎖,并發(fā)效率會(huì)有所下降,若需要可以通過配置useUnfairLock屬性為true使用非公平鎖。 max-wait: 6000 # 是否緩存preparedStatement,也就是PSCache。 # PSCache對(duì)支持游標(biāo)的數(shù)據(jù)庫性能提升巨大,比如說oracle。在mysql下建議關(guān)閉。 pool-prepared-statements: true # 要啟用PSCache,其值必須大于0,當(dāng)大于0時(shí),poolPreparedStatements自動(dòng)觸發(fā)修改為true。 # 在Druid中,不會(huì)存在Oracle下PSCache占用內(nèi)存過多的問題,可以把這個(gè)數(shù)值配置大一些,比如說100。 max-pool-prepared-statement-per-connection-size: 20 # 用來檢測(cè)連接是否有效的sql,要求是一個(gè)查詢語句,常用select 'x'。 # 如果validationQuery為null,testOnBorrow、testOnReturn、testWhileIdle都不會(huì)起作用。 validation-query: select 1 from dual # 檢測(cè)連接是否有效的超時(shí)時(shí)間,單位為秒。 # 底層調(diào)用jdbc Statement對(duì)象的void setQueryTimeout(int seconds)方法。 # validation-query-timeout: 30 # 有兩個(gè)含義: # 1) Destroy線程會(huì)檢測(cè)連接的間隔時(shí)間,若連接空閑時(shí)間大于等于minEvictableIdleTimeMillis則關(guān)閉物理連接。 # 2) testWhileIdle的判斷依據(jù),詳細(xì)看testWhileIdle屬性的說明。 time-between-eviction-runs-millis: 60000 # 連接保持空閑而不被驅(qū)逐的最長時(shí)間。 min-evictable-idle-time-millis: 300000 # 建議配置為true,不影響性能,并且保證安全性。 # 申請(qǐng)連接的時(shí)候檢測(cè),若空閑時(shí)間大于timeBetweenEvictionRunsMillis,執(zhí)行validationQuery檢測(cè)連接是否有效。 test-while-idle: true # 申請(qǐng)連接時(shí)執(zhí)行validationQuery檢測(cè)連接是否有效,做了這個(gè)配置會(huì)降低性能。 test-on-borrow: false # 歸還連接時(shí)執(zhí)行validationQuery檢測(cè)連接是否有效,做了這個(gè)配置會(huì)降低性能。 test-on-return: false # 類型是字符串,通過別名的方式配置擴(kuò)展的攔截器插件,常用的攔截器插件有: # 監(jiān)控統(tǒng)計(jì)用的filter:stat,日志用的filter:log4j,防御sql注入攻擊的filter:wall,三個(gè)同時(shí)配置的化,用逗號(hào)隔開。 # 注意,Druid中的filter-class-names配置項(xiàng)是不起作用的,必須采用filters配置項(xiàng)才可以。 filters: stat,wall,log4j2 # 通過connectProperties屬性來打開mergeSql功能;慢SQL記錄。 connect-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000 # 合并多個(gè)DruidDataSource的監(jiān)控?cái)?shù)據(jù) use-global-data-source-stat: true mybatis-plus: mapper-locations: classpath*:/dao/**/*Dao.xml # 數(shù)據(jù)庫支持id唯一 global-config: id-type: ASSIGN_ID capital-mode: false
MyBatis-Plus3.X yml配置
mybatis-plus: # Mapper.xml 文件位置 Maven 多模塊項(xiàng)目的掃描路徑需以 classpath*: 開頭 mapperLocations: classpath*:com/vanhr/**/xml/*Mapper.xml # #MyBaits 別名包掃描路徑,通過該屬性可以給包中的類注冊(cè)別名 實(shí)體掃描,多個(gè)package用逗號(hào)或者分號(hào)分隔 # typeAliasesPackage: com.vanhr.user.dao.entity # #通過父類(或?qū)崿F(xiàn)接口)的方式來限定掃描實(shí)體 # typeAliasesSuperType: com.vanhr.user.dao.entity.baseEntity # #枚舉類 掃描路徑 如果配置了該屬性,會(huì)將路徑下的枚舉類進(jìn)行注入,讓實(shí)體類字段能夠簡單快捷的使用枚舉屬性 # typeEnumsPackage: com.vanhr.user.dao.enums # #啟動(dòng)時(shí)是否檢查 MyBatis XML 文件的存在,默認(rèn)不檢查 僅限spring boot 使用 # checkConfigLocation : true # #通過該屬性可指定 MyBatis 的執(zhí)行器,MyBatis 的執(zhí)行器總共有三種: # # ExecutorType.SIMPLE:該執(zhí)行器類型不做特殊的事情,為每個(gè)語句的執(zhí)行創(chuàng)建一個(gè)新的預(yù)處理語句(PreparedStatement) # # ExecutorType.REUSE:該執(zhí)行器類型會(huì)復(fù)用預(yù)處理語句(PreparedStatement) # # ExecutorType.BATCH:該執(zhí)行器類型會(huì)批量執(zhí)行所有的更新語句 # executorType: SIMPLE # # 指定外部化 MyBatis Properties 配置,通過該配置可以抽離配置,實(shí)現(xiàn)不同環(huán)境的配置部署 # configurationProperties: configuration: # MyBatis 原生支持的配置 # 是否開啟自動(dòng)駝峰命名規(guī)則(camel case)映射 mapUnderscoreToCamelCase: true # 枚舉處理類,如果配置了該屬性,枚舉將統(tǒng)一使用指定處理器進(jìn)行處理 # org.apache.ibatis.type.EnumTypeHandler : 存儲(chǔ)枚舉的名稱 # org.apache.ibatis.type.EnumOrdinalTypeHandler : 存儲(chǔ)枚舉的索引 # com.baomidou.mybatisplus.extension.handlers.MybatisEnumTypeHandler : 枚舉類需要實(shí)現(xiàn)IEnum接口或字段標(biāo)記@EnumValue注解.(3.1.2以下版本為EnumTypeHandler) # defaultEnumTypeHandler: com.baomidou.mybatisplus.extension.handlers.MybatisEnumTypeHandler # 配置JdbcTypeForNull, oracle數(shù)據(jù)庫必須配置 jdbc-type-for-null: null global-config: # 全局策略配置 # 是否控制臺(tái) print mybatis-plus 的 LOGO banner: false db-config: # id類型 id-type: auto # 表名是否使用下劃線命名,默認(rèn)數(shù)據(jù)庫表使用下劃線命名 table-underline: true #是否開啟大寫命名,默認(rèn)不開啟 # capital-mode: false # #邏輯已刪除值,(邏輯刪除下有效) 需要注入邏輯策略LogicSqlInjector 以@Bean方式注入 # logic-not-delete-value: 0 # #邏輯未刪除值,(邏輯刪除下有效) # logic-delete-value: 1
到此這篇關(guān)于MyBatis-Plus的yml配置方式小結(jié)的文章就介紹到這了,更多相關(guān)MyBatis-Plus yml配置內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:
相關(guān)文章
五種單件模式之Singleton的實(shí)現(xiàn)方法詳解
本篇文章是對(duì)Singleton的實(shí)現(xiàn)方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06如何解決SpringBoot啟動(dòng)時(shí)無法加載配置文件或環(huán)境變量問題
文章主要介紹了在Spring Boot項(xiàng)目中遇到配置文件加載失敗和資源目錄圖標(biāo)異常的問題,并提供了詳細(xì)的解決步驟,解決方法包括在pom.xml文件中添加特定配置,確保資源目錄順序正確,以及注意節(jié)點(diǎn)的正確使用,通過這些步驟,可以有效解決資源加載問題,提高開發(fā)效率2024-12-12解決Spring Boot中Druid連接池“discard long time 
本文主要介紹了解決Spring Boot中Druid連接池“discard long time none received connection“警告,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2025-03-03SpringBoot定時(shí)任務(wù)多線程實(shí)現(xiàn)示例
在真實(shí)的Java開發(fā)環(huán)境中,我們經(jīng)常會(huì)需要用到定時(shí)任務(wù)來幫助我們完成一些特殊的任務(wù),本文主要介紹了SpringBoot定時(shí)任務(wù)多線程實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-12-12