溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Druid 使用

發(fā)布時間:2020-07-13 03:28:20 來源:網(wǎng)絡(luò) 閱讀:2815 作者:xiaosawuhen 欄目:開發(fā)技術(shù)

根據(jù)現(xiàn)在的所知情況,Druid 包括3方面功能,如有缺失,請大家指正

    1.作為數(shù)據(jù)庫連接池使用

	<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close" >
	    <property name="driverClass" value="${jdbc.driverClass}"></property>
	    <property name="" value="${jdbc.}"></property>
	    <property name="url" value="${jdbc.url}"></property>
	    <property name="username" value="${jdbc.username}"></property>
	    <property name="password" value="${jdbc.password}"></property>
	    <!-- 連接池最大使用連接數(shù) -->
	    <property name="maxActive" value="${jdbc.max.active}"></property>
	    <!-- 初始化連接大小 -->
	    <property name="initialSize" value="${jdbc.initial.size}"></property>
	    <!-- 獲取連接最大等待時間 -->
	    <property name="maxWait" value="${jdbc.max.wait}"></property>
	    <property name="minIdle" value="${jdbc.min.idle}"></property>
	    <!-- 自動清除無用連接 -->
	    <property name="removeAbandoned" value="${jdbc.remove.abandoned}"></property>
	    <!-- 清除無用連接的等待時間 -->
	    <property name="removeAbandonedTimeout" value="${jdbc.remove.abandoned.timeout}"></property>
	    <!-- 連接屬性 -->
	    <property name="connectionProperties" value="clientEncoding=UTF-8"></property>
	    <property name="testOnBorrow" value="${jdbc.testOnBorrow}"></property>
	    <property name="validationQuery" value="${jdbc.validation.query}"></property>
		<property name="filters" value="stat" />
        <property name="proxyFilters">  
          <list>  
              <ref bean="wall-filter"/>  
          </list>  
      </property>	     
	  </bean>
	<bean id="wall-filter" class="com.alibaba.druid.wall.WallFilter">  
        <property name="config" ref="wall-config" />  
    </bean>  
      
    <bean id="wall-config" class="com.alibaba.druid.wall.WallConfig">  
        <property name="multiStatementAllow" value="true" />  
    </bean>	  
 
	<!-- 對數(shù)據(jù)源進行事務(wù)管理 -->
	<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager" p:dataSource-ref="dataSource"/>


    2.提供sql執(zhí)行l(wèi)og查詢功能

        配置web.xml,至此基本配置完成,可以查看內(nèi)置監(jiān)控頁面了,路徑是/druid/index.html

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


    3.采集web-jdbc關(guān)聯(lián)監(jiān)控的數(shù)據(jù)

        配置WebStatFilter,之后可以使用Web應(yīng)用、URI監(jiān)控、Session監(jiān)控等功能

  <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>
    <init-param>
    	<param-name>profileEnable</param-name>
    	<param-value>true</param-value>
	</init-param>
	<init-param>
        <param-name>principalCookieName</param-name>
        <param-value>USER_COOKIE</param-value>
    </init-param>
    <init-param>
        <param-name>principalSessionName</param-name>
        <param-value>USER_SESSION</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>DruidWebStatFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>


    修改Spring的配置文件

  <bean id="druid-stat-interceptor" class="com.alibaba.druid.support.spring.stat.DruidStatInterceptor">
      </bean>
  <bean id="druid-stat-pointcut" class="org.springframework.aop.support.JdkRegexpMethodPointcut" scope="prototype">
     <property name="patterns">
         <list>
             <value>com.company.bussines.service.*</value>
             <value>com.company.bussines.dao.*</value>
         </list>
     </property>
  </bean>
  
  <aop:config proxy-target-class="true">
     <aop:advisor advice-ref="druid-stat-interceptor" pointcut-ref="druid-stat-pointcut" />
  </aop:config>

Druid 使用

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI