介绍
使用弹簧引导如何实现集成德鲁伊数据库连接池?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
<强> 1。前言强>
德鲁伊数据库连接池由阿里巴巴开源,号称是java语言中最好的数据库连接池,是为监控而生的。
通过本文,我们可以看到
- <李>弹簧引导如何配置数据源李> <>李弹簧引导如何集成德鲁伊数据库连接池李> <>李如何打开并访问德鲁伊数据库连接池的监控功能李> <>李弹簧引导使用JdbcTemplate操作数据库
李,>
<强> 2。配置砰的一声。xml 强>
& lt; parent> & lt; groupId> org.springframework.boot & lt; artifactId> spring-boot-starter-parent & lt; version> 1.3.5.RELEASE & lt;/parent> & lt; properties> & lt; project.build.sourceEncoding> UTF-8 & lt; project.reporting.outputEncoding> UTF-8 & lt; java.version> 1.8 & lt;/java.version> & lt;/properties> & lt; dependencies> & lt; dependency> & lt; groupId> org.springframework.boot & lt; artifactId> spring-boot-starter-web & lt;/dependency> & lt; dependency> & lt; groupId> org.springframework.boot & lt; artifactId> spring-boot-starter-jdbc & lt;/dependency> & lt; dependency> & lt; groupId> com.alibaba & lt; artifactId> druid & lt; version> 1.0.20 & lt;/dependency> & lt; dependency> & lt; groupId> org.postgresql & lt; artifactId> postgresql & lt; scope> runtime & lt;/dependency> & lt;/dependencies>
<强> 3。在应用程序中。属性中配置数据源强>
#数据库访问配置,此处使用postgres为例。 #主数据源,默认的 spring.datasource.type=com.alibaba.druid.pool.DruidDataSource spring.datasource.driver-class-name=org.postgresql.Driver spring.datasource.url=jdbc: postgresql://192.168.1.9/jianshudb spring.datasource.username=postgres spring.datasource.password=yourpassword #下面为连接池的补充设置,应用到上面所有数据源中 #初始化大小,最小,最大 spring.datasource.initialSize=5 spring.datasource.minIdle=5 spring.datasource.maxActive=20 #配置获取连接等待超时的时间 spring.datasource.maxWait=60000 #配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 spring.datasource.timeBetweenEvictionRunsMillis=60000 #配置一个连接在池中最小生存的时间,单位是毫秒 spring.datasource.minEvictableIdleTimeMillis=300000 #甲骨文请使用从双重选择1 spring.datasource。validationQuery=选择& # 39;x # 39; spring.datasource.testWhileIdle=true spring.datasource.testOnBorrow=false spring.datasource.testOnReturn=false #打开PSCache,并且指定每个连接上PSCache的大小 spring.datasource.poolPreparedStatements=true spring.datasource.maxPoolPreparedStatementPerConnectionSize=20 #配置监控统计拦截的过滤器,去掉后监控界面sql无法统计,& # 39;墙# 39;用于防火墙 spring.datasource.filters=统计,墙,slf4j #通过connectProperties属性来打开mergeSql功能,慢SQL记录 # spring.datasource.connectionProperties=druid.stat.mergeSql=true; druid.stat.slowSqlMillis=5000 #合并多个DruidDataSource的监控数据 # spring.datasource.useGlobalDataSourceStat=true
DruidDataSource参考配置:https://github.com/alibaba/druid/wiki/%E9%85%8D%E7%BD%AE_DruidDataSource%E5%8F%82%E8%80%83%E9%85%8D%E7%BD%AE
<强> 4。打开德鲁伊的监控统计功能强>
德鲁伊的监控统计功能是通过过滤器链扩展实现,如果你要打开监控统计功能,需要配置StatFilter,相关代码如下。
@ configuration 公开课DruidConfiguration { 私有静态最终记录器日志=LoggerFactory.getLogger (DruidConfiguration.class); @ bean 公共ServletRegistrationBean druidServlet () { log.info(“初始化Servlet配置“德鲁伊); ServletRegistrationBean ServletRegistrationBean=new ServletRegistrationBean (); servletRegistrationBean。setServlet(新StatViewServlet ()); servletRegistrationBean.addUrlMappings(“/德/*“); String> Map<字符串;initParameters=new HashMap使用弹簧引导如何实现集成德鲁伊数据库连接池