JSP Spring中Druid连接池配置详解

(编辑:jimmy 日期: 2024/9/21 浏览:2)

JSP Spring中Druid连接池配置

jdbc.properties

url=jdbc:postgresql://***.***.***.***:****/****
username=***
password=***

applicationContext.xml中配置bean

<!-- 阿里 druid 数据库连接池 --> 
 <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close">  
  <!-- 基本属性 url、user、password --> 
  <property name="url" value="${url}" /> 
  <property name="username" value="${username}" /> 
  <property name="password" value="${password}" /> 

  <!-- 配置初始化大小、最小、最大 --> 
  <property name="initialSize" value="1" /> 
  <property name="minIdle" value="1" />  
  <property name="maxActive" value="20" /> 

  <!-- 配置获取连接等待超时的时间 --> 
  <property name="maxWait" value="60000" /> 

  <!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 --> 
  <property name="timeBetweenEvictionRunsMillis" value="60000" /> 

  <!-- 配置一个连接在池中最小生存的时间,单位是毫秒 --> 
  <property name="minEvictableIdleTimeMillis" value="300000" /> 

  <property name="validationQuery" value="SELECT 'x'" /> 
  <property name="testWhileIdle" value="true" /> 
  <property name="testOnBorrow" value="false" /> 
  <property name="testOnReturn" value="false" /> 

  <!-- 打开PSCache,并且指定每个连接上PSCache的大小 --> 
  <property name="poolPreparedStatements" value="true" /> 
  <property name="maxPoolPreparedStatementPerConnectionSize" value="20" /> 

  <!-- 配置监控统计拦截的filters,去掉后监控界面sql无法统计 --> 
  <property name="filters" value="stat" />  
</bean> 

监控配置web.xml

<filter>
    <filter-name>DruidWebStatFilter</filter-name>
    <filter-class>com.alibaba.druid.support.http.WebStatFilter</filter-class>
    <init-param>
      <param-name>exclusions</param-name>
      <param-value>*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>DruidWebStatFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

  <servlet>
    <servlet-name>DruidStatView</servlet-name>
    <servlet-class>com.alibaba.druid.support.http.StatViewServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>DruidStatView</servlet-name>
    <url-pattern>/druid/*</url-pattern>
  </servlet-mapping>

该配置可以访问监控界面,配置好后,可以通过 http://ip:port/项目名/druid/index.html

监控数据库访问性能

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。