使用弹簧引导如何实现集成德鲁伊数据库连接池

  介绍

使用弹簧引导如何实现集成德鲁伊数据库连接池?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

<强> 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

使用弹簧引导如何实现集成德鲁伊数据库连接池