SSM项目下Druid连接池的配置及数据源监控的使用

一,连接池的配置 在pom.xml中添加,druid的maven信息 <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <ver...

一,连接池的配置

在pom.xml中添加,druid的maven信息

<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>druid</artifactId>
    <version>1.1.21</version>
</dependency>

数据源设置:

要在init-method设置init方法,才能在监控页面中查看数据源等操作 
<!--使用druid数据源-->
    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init">
        <!--注入连接属性-->
        <property name="driverClassName" value="${jdbc.driverClass}"/>
        <property name="url" value="${jdbc.url}"/>
        <property name="username" value="${jdbc.user}"/>
        <property name="password" value="${jdbc.password}"/>
        <!--初始化连接池大小-->
        <property name="initialSize" value="5"></property>
        <!--设置最大连接数-->
        <property name="maxActive" value="10"></property>
        <!--设置等待时间-->
        <property name="maxWait" value="5000"/>
        <!--配置数据源监控的filter-->
        <property name="filters" value="stat"></property>
    </bean>

二,数据源监控的配置:

druid数据源监控是通过其support包下的StatViewServlet来提供的,所以要在web.xml进行servlet的配置

 StatViewServlet的部分代码如下:

public class StatViewServlet extends ResourceServlet {
    private static final Log LOG = LogFactory.getLog(StatViewServlet.class);
    private static final long serialVersionUID = 1L;
    public static final String PARAM_NAME_RESET_ENABLE = "resetEnable";
    public static final String PARAM_NAME_JMX_URL = "jmxUrl";
    public static final String PARAM_NAME_JMX_USERNAME = "jmxUsername";
    public static final String PARAM_NAME_JMX_PASSWORD = "jmxPassword";
    private DruidStatService statService = DruidStatService.getInstance();
    private String jmxUrl = null;
    private String jmxUsername = null;
    private String jmxPassword = null;
    private MBeanServerConnection conn = null;

    public StatViewServlet() {
        super("support/http/resources");
    }
StatViewServlet

其资源路径在

"support/http/resources" 主要是一些静态的前端资源文件,所以要在filter中过滤

web.xml配置

<!-- druid的监控配置 -->
  <servlet>
    <servlet-name>StatViewServlet</servlet-name>
    <servlet-class>com.alibaba.druid.support.http.StatViewServlet</servlet-class>
    <!--登陆名-->
    <init-param>
      <param-name>loginUsername</param-name>
      <param-value>admin</param-value>
    </init-param>
    <!-- 登录密码-->
    <init-param>
      <param-name>loginPassword</param-name>
      <param-value>root</param-value>
    </init-param>
    <!--白名单-->
    <init-param>
      <param-name>allow</param-name>
      <param-value></param-value>
    </init-param>
    <!--黑名单-->
    <init-param>
      <param-name>deny</param-name>
      <param-value></param-value>
    </init-param>
  </servlet>
  <servlet-mapping>
    <servlet-name>StatViewServlet</servlet-name>
    <url-pattern>/druid/*</url-pattern>
  </servlet-mapping>


  <filter>
    <filter-name>WebStatFilter</filter-name>
    <filter-class>com.alibaba.druid.support.http.WebStatFilter</filter-class>
    <!--过滤的样式-->
    <init-param>
      <param-name>exclusions</param-name>
      <param-value>*.js,*.gif,*.css,*.ico,*.jpg,*.png,/druid/*</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>WebStatFilter</filter-name>
    <servlet-name>StatViewServlet</servlet-name>
  </filter-mapping>
  <!--druid监控配置结束-->

配置完成访问项目路径下的 “/druid/就能进入监控页面,登入用户名和密码就是在servlet中配置的

  • 发表于 2020-02-20 17:49
  • 阅读 ( 366 )
  • 分类:网络文章

条评论

请先 登录 后评论
不写代码的码农
小编

篇文章

作家榜 »

  1. 小编 文章
返回顶部
部分文章转自于网络,若有侵权请联系我们删除