关于druid:聊聊druid连接池的参数配置
序本文次要钻研一下druid连接池的参数配置 DruidDataSourceFactorydruid-1.2.11-sources.jar!/com/alibaba/druid/pool/DruidDataSourceFactory.java public class DruidDataSourceFactory implements ObjectFactory { private static final Log LOG = LogFactory.getLog(DruidDataSourceFactory.class); static final int UNKNOWN_TRANSACTIONISOLATION = -1; public static final String PROP_DEFAULTAUTOCOMMIT = "defaultAutoCommit"; public static final String PROP_DEFAULTREADONLY = "defaultReadOnly"; public static final String PROP_DEFAULTTRANSACTIONISOLATION = "defaultTransactionIsolation"; public static final String PROP_DEFAULTCATALOG = "defaultCatalog"; public static final String PROP_DRIVERCLASSNAME = "driverClassName"; public static final String PROP_MAXACTIVE = "maxActive"; public static final String PROP_MAXIDLE = "maxIdle"; public static final String PROP_MINIDLE = "minIdle"; public static final String PROP_INITIALSIZE = "initialSize"; public static final String PROP_MAXWAIT = "maxWait"; public static final String PROP_TESTONBORROW = "testOnBorrow"; public static final String PROP_TESTONRETURN = "testOnReturn"; public static final String PROP_TIMEBETWEENEVICTIONRUNSMILLIS = "timeBetweenEvictionRunsMillis"; public static final String PROP_NUMTESTSPEREVICTIONRUN = "numTestsPerEvictionRun"; public static final String PROP_MINEVICTABLEIDLETIMEMILLIS = "minEvictableIdleTimeMillis"; public static final String PROP_PHY_TIMEOUT_MILLIS = "phyTimeoutMillis"; public static final String PROP_TESTWHILEIDLE = "testWhileIdle"; public static final String PROP_PASSWORD = "password"; public static final String PROP_URL = "url"; public static final String PROP_USERNAME = "username"; public static final String PROP_VALIDATIONQUERY = "validationQuery"; public static final String PROP_VALIDATIONQUERY_TIMEOUT = "validationQueryTimeout"; public static final String PROP_INITCONNECTIONSQLS = "initConnectionSqls"; public static final String PROP_ACCESSTOUNDERLYINGCONNECTIONALLOWED = "accessToUnderlyingConnectionAllowed"; public static final String PROP_REMOVEABANDONED = "removeAbandoned"; public static final String PROP_REMOVEABANDONEDTIMEOUT = "removeAbandonedTimeout"; public static final String PROP_LOGABANDONED = "logAbandoned"; public static final String PROP_POOLPREPAREDSTATEMENTS = "poolPreparedStatements"; public static final String PROP_MAXOPENPREPAREDSTATEMENTS = "maxOpenPreparedStatements"; public static final String PROP_CONNECTIONPROPERTIES = "connectionProperties"; public static final String PROP_FILTERS = "filters"; public static final String PROP_EXCEPTION_SORTER = "exceptionSorter"; public static final String PROP_EXCEPTION_SORTER_CLASS_NAME = "exception-sorter-class-name"; public static final String PROP_NAME = "name"; public static final String PROP_INIT = "init"; private static final String[] ALL_PROPERTIES = { PROP_DEFAULTAUTOCOMMIT, PROP_DEFAULTREADONLY, PROP_DEFAULTTRANSACTIONISOLATION, PROP_DEFAULTCATALOG, PROP_DRIVERCLASSNAME, PROP_MAXACTIVE, PROP_MAXIDLE, PROP_MINIDLE, PROP_INITIALSIZE, PROP_MAXWAIT, PROP_TESTONBORROW, PROP_TESTONRETURN, PROP_TIMEBETWEENEVICTIONRUNSMILLIS, PROP_NUMTESTSPEREVICTIONRUN, PROP_MINEVICTABLEIDLETIMEMILLIS, PROP_TESTWHILEIDLE, PROP_PASSWORD, PROP_FILTERS, PROP_URL, PROP_USERNAME, PROP_VALIDATIONQUERY, PROP_VALIDATIONQUERY_TIMEOUT, PROP_INITCONNECTIONSQLS, PROP_ACCESSTOUNDERLYINGCONNECTIONALLOWED, PROP_REMOVEABANDONED, PROP_REMOVEABANDONEDTIMEOUT, PROP_LOGABANDONED, PROP_POOLPREPAREDSTATEMENTS, PROP_MAXOPENPREPAREDSTATEMENTS, PROP_CONNECTIONPROPERTIES, PROP_EXCEPTION_SORTER, PROP_EXCEPTION_SORTER_CLASS_NAME, PROP_INIT, PROP_NAME, "druid.timeBetweenLogStatsMillis", "druid.stat.sql.MaxSize", "druid.clearFiltersEnable", "druid.resetStatEnable", // "druid.notFullTimeoutRetryCount", // "druid.maxWaitThreadCount", // "druid.failFast", // "druid.phyTimeoutMillis", // "druid.wall.tenantColumn", // "druid.wall.updateAllow", // "druid.wall.deleteAllow", // "druid.wall.insertAllow", // "druid.wall.selelctAllow", // "druid.wall.multiStatementAllow", // }; //......} DruidDataSourceFactory的ALL_PROPERTIES常量定义了所有反对的可配置项DruidDataSourceWrappercom/alibaba/druid/spring/boot/autoconfigure/DruidDataSourceWrapper.java ...