SpringBoot集成Druid的最簡單的小示例

參考網頁

https://blog.csdn.net/king_is_everyone/article/details/53098350css

創建maven工程

Pom文件

<?xml version="1.0" encoding="UTF-8"?>html

    <project xmlns="http://maven.apache.org/POM/4.0.0"java

             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"mysql

             xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">web

        <parent>spring

            <groupId>org.springframework.boot</groupId>sql

            <artifactId>spring-boot-starter-parent</artifactId>apache

            <version>1.4.1.RELEASE</version>springboot

        </parent>app

        <modelVersion>4.0.0</modelVersion>

 

        <artifactId>springboot-6</artifactId>

        <dependencies>

            <dependency>

                <groupId>org.springframework.boot</groupId>

                <artifactId>spring-boot-starter</artifactId>

            </dependency>

            <dependency>

                <groupId>org.springframework.boot</groupId>

                <artifactId>spring-boot-starter-web</artifactId>

            </dependency>

            <dependency>

                <groupId>org.springframework.boot</groupId>

                <artifactId>spring-boot-starter-test</artifactId>

                <scope>test</scope>

            </dependency>

            <dependency>

                <groupId>org.springframework.boot</groupId>

                <artifactId>spring-boot-starter-jdbc</artifactId>

            </dependency>

            <dependency>

                <groupId>mysql</groupId>

                <artifactId>mysql-connector-java</artifactId>

                <version>5.1.39</version>

            </dependency>

            <dependency>

                <groupId>com.alibaba</groupId>

                <artifactId>druid</artifactId>

                <version>1.0.26</version>

            </dependency>

        </dependencies>

        <build>

            <plugins>

                <plugin>

                    <groupId>org.springframework.boot</groupId>

                    <artifactId>spring-boot-maven-plugin</artifactId>

                    <version>1.4.1.RELEASE</version>

                    <configuration>

                        <fork>true</fork>

                    </configuration>

                </plugin>

            </plugins>

        </build>

 

    </project>

主啓動類

package com.richfit.ruiche.DruidExample;

 

import java.sql.SQLException;

import java.util.HashMap;

import java.util.Map;

 

import javax.sql.DataSource;

 

import org.springframework.boot.SpringApplication;

import org.springframework.boot.autoconfigure.SpringBootApplication;

import org.springframework.boot.web.servlet.FilterRegistrationBean;

import org.springframework.boot.web.servlet.ServletRegistrationBean;

import org.springframework.context.annotation.Bean;

 

import com.alibaba.druid.pool.DruidDataSource;

import com.alibaba.druid.support.http.StatViewServlet;

import com.alibaba.druid.support.http.WebStatFilter;

 

@SpringBootApplication

public class DruidExampleApp {

public static void main(String[] args) throws Exception {

        SpringApplication.run(DruidExampleApp.class, args);

    }

 

    /**

     * 註冊DruidServlet

     *

     * @return

     */

    @Bean

    public ServletRegistrationBean druidServletRegistrationBean() {

        ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean();

        servletRegistrationBean.setServlet(new StatViewServlet());

        servletRegistrationBean.addUrlMappings("/druid/*");

        

        Map<String,String> params = new HashMap<String,String>();

        //帳號密碼,是否容許重置數據

        params.put("loginUsername","admin");

        params.put("loginPassword","admin");

        params.put("resetEnable","true");

        servletRegistrationBean.setInitParameters(params);

        

        return servletRegistrationBean;

    }

 

    /**

     * 註冊DruidFilter攔截

     *

     * @return

     */

    @Bean

    public FilterRegistrationBean duridFilterRegistrationBean() {

        FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean();

        filterRegistrationBean.setFilter(new WebStatFilter());

        Map<String, String> initParams = new HashMap<String, String>();

        //設置忽略請求

        initParams.put("exclusions", "*.js,*.gif,*.jpg,*.bmp,*.png,*.css,*.ico,/druid/*");

        filterRegistrationBean.setInitParameters(initParams);

        filterRegistrationBean.addUrlPatterns("/*");

        return filterRegistrationBean;

    }

 

    /**

     * 配置DataSource

     * @return

     * @throws SQLException

     */

    @Bean

    public DataSource druidDataSource() throws SQLException {

        DruidDataSource druidDataSource = new DruidDataSource();

        druidDataSource.setUsername("root");

        druidDataSource.setPassword("root");

        druidDataSource.setUrl("jdbc:mysql://localhost:3306/springbootdb_master");

        druidDataSource.setMaxActive(100);

        druidDataSource.setFilters("stat,wall");

        druidDataSource.setInitialSize(10);

        return druidDataSource;

    }

}

運行主啓動類並測試

http://localhost:8080/druid/login.html

登陸後

SpringBoot集成Druid的關鍵要點--如下3點在主啓動類中都有所體現

註冊DruidServlet

註冊DruidFilter攔截

配置DataSource

相關文章
相關標籤/搜索