Application.yaml
spring:main:banner-mode:console Datasource:type:com.alibaba.druid.pool.DruidDataSource url:jdb C:mysql://localhost:3306/test username:test password:123456# driver-class-name:com.mysql.jdbc.driver# Druid Pool Customize configuration DriverClassName:com.mysql.jdbc.Driver initialsize:10 Minidle:5 maxactive:20 maxwait:60000 timebetweenevictionrunsmillis:60000 minevictableidletimemillis:300000 Validationquery:select 1 from dual testwhileidle:true testonborrow:false testonreturn:false removeabandoned:true Removeabando nedtimeout:1800 logabandoned:true filters:stat,wall,slf4j logslowsql:true loginusername:test loginPass word:123456 jdbc:template:max-rows:1000 query-timeout:1200 jpa:hibernate:naming: physical-strategy:org.hibernate.boot.model.naming.physicalnamingstrategystandardimpllogging:level:root:debug
Druidconfiguration
@Component@ConfigurationProperties(prefix = "spring.datasource")public class DruidConfiguration { private String url; private String username; private String password; private String driverClassName; private int initialSize; private int minIdle; private int maxActive; private int maxWait; private int timeBetweenEvictionRunsMillis; private int minEvictableIdleTimeMillis; private String validationQuery; private boolean testWhileIdle; private boolean testOnBorrow; private boolean testOnReturn; private boolean removeAbandoned; private int removeAbandonedTimeout; private boolean logAbandoned; private String filters; private boolean logSlowSql; private String loginUsername; private String loginPassword;}
@Configuration Configuration
@Configurationpublic class Customizeconfig {private final static Logger Logger = Loggerfactory.getlogger (customizeconf Ig.class); @Autowired private druidconfiguration druidconfiguration; @Bean public DataSource Druiddatasource () {Druiddatasource DataSource = new Druiddatasource (); Datasource.seturl (Druidconfiguration.geturl ()); Datasource.setusername (Druidconfiguration.getusername ()); Datasource.setpassword (Druidconfiguration.getpassword ()); Datasource.setdriverclassname (Druidconfiguration.getdriverclassname ()); Datasource.setinitialsize (Druidconfiguration.getinitialsize ()); Datasource.setminidle (Druidconfiguration.getminidle ()); Datasource.setmaxactive (Druidconfiguration.getmaxactive ()); Datasource.setmaxwait (Druidconfiguration.getmaxwait ()); Datasource.settimebetweenevictionrunsmillis (Druidconfiguration.gettimebetweenevictionrunsmillis ()); Datasource.setminevictableidletimemillis (Druidconfiguration.getminevictableidletimemillis ()); Datasource.setvalidationquery (Druidconfiguration.getvalidationquery ()); Datasource.settestwhileidle (Druidconfiguration.istestwhileidle ()); Datasource.settestonborrow (Druidconfiguration.istestonborrow ()); Datasource.settestonreturn (Druidconfiguration.istestonreturn ()); Datasource.setremoveabandoned (druidconfiguration.isremoveabandoned ()); Datasource.setremoveabandonedtimeout (Druidconfiguration.getremoveabandonedtimeout ()); Datasource.setlogabandoned (druidconfiguration.islogabandoned ()); try {datasource.setfilters (druidconfiguration.getfilters ()); } catch (SQLException e) {logger.error ("datasource.setfilters occur error.", e); } return datasource; } @Bean Public Servletregistrationbean Druidservlet () {Servletregistrationbean reg = new Servletregistrati Onbean (); Reg.setservlet (New Statviewservlet ());Reg.addurlmappings ("/druid/*"); Reg.addinitparameter ("Loginusername", Druidconfiguration.getloginusername ()); Reg.addinitparameter ("Loginpassword", Druidconfiguration.getloginpassword ()); Reg.addinitparameter ("Logslowsql", String.valueof (Druidconfiguration.islogslowsql ())); return reg; } @Bean Public Filterregistrationbean Filterregistrationbean () {Filterregistrationbean Filterregistrationbea n = new Filterregistrationbean (); Filterregistrationbean.setfilter (New Webstatfilter ()); Filterregistrationbean.addurlpatterns ("/*"); Filterregistrationbean.addinitparameter ("Exclusions", "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*"); Filterregistrationbean.addinitparameter ("Profileenable", "true"); return Filterregistrationbean; }}
Spring Boot Configuration druid