激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

香港云服务器
服務(wù)器之家 - 編程語言 - Java教程 - SpringBoot使用Druid數(shù)據(jù)源的配置方法

SpringBoot使用Druid數(shù)據(jù)源的配置方法

2021-04-24 11:06crazy_bai Java教程

這篇文章主要介紹了SpringBoot使用Druid數(shù)據(jù)源的配置方法,文中代碼實(shí)例相結(jié)合的形式給大家介紹的非常詳細(xì),需要的朋友參考下吧

druid是阿里巴巴開源平臺(tái)上一個(gè)數(shù)據(jù)庫連接池實(shí)現(xiàn),它結(jié)合了c3p0、dbcp、proxool等db池的優(yōu)點(diǎn),同時(shí)加入了日志監(jiān)控,可以很好的監(jiān)控db池連接和sql的執(zhí)行情況,可以說是針對監(jiān)控而生的db連接池(據(jù)說是目前最好的連接池)

一、依賴

為了測試,使用jdbctemplate

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<!-- jdbctemplate -->
<dependency>
  <groupid>org.springframework.boot</groupid>
  <artifactid>spring-boot-starter-jdbc</artifactid>
</dependency>
<!-- druid數(shù)據(jù)庫連接池 -->
<dependency>
  <groupid>com.alibaba</groupid>
  <artifactid>druid</artifactid>
  <version>1.0.26</version>
</dependency>
<!-- mysql connector -->
<dependency>
  <groupid>mysql</groupid>
  <artifactid>mysql-connector-java</artifactid>
  <scope>runtime</scope>
</dependency>

二、druid配置

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
druid.properties
#數(shù)據(jù)庫設(shè)置
spring.datasource.driverclassname=com.mysql.jdbc.driver
spring.datasource.url=jdbc:mysql://localhost:3306/uu_core?useunicode=true&characterencoding=utf8&autoreconnect=true&usessl=true
spring.datasource.username=root
spring.datasource.password=root
#--------------------------
# 下面為連接池的補(bǔ)充設(shè)置,應(yīng)用到上面所有數(shù)據(jù)源
# 初始化大小,最小,最大
spring.datasource.initialsize=5
spring.datasource.minidle=1
spring.datasource.maxactive=50
# 配置獲取連接等待超時(shí)的時(shí)間
spring.datasource.maxwait=60000
# 配置間隔多久才進(jìn)行一次檢測,檢測需要關(guān)閉的空閑連接,單位是毫秒
spring.datasource.timebetweenevictionrunsmillis=60000
# 配置一個(gè)連接在池中最小生存的時(shí)間,單位是毫秒
spring.datasource.minevictableidletimemillis=300000
spring.datasource.validationquery=select 1 from dual
spring.datasource.testwhileidle=true
spring.datasource.testonborrow=false
spring.datasource.testonreturn=false
# 打開pscache,并且指定每個(gè)連接上pscache的大小
spring.datasource.poolpreparedstatements=false
#spring.datasource.maxpoolpreparedstatementperconnectionsize=20
# 配置監(jiān)控統(tǒng)計(jì)攔截的filters,去掉后監(jiān)控界面sql無法統(tǒng)計(jì),'wall'用于防火墻
spring.datasource.filters=stat,wall,log4j
# 通過connectproperties屬性來打開mergesql功能;慢sql記錄
spring.datasource.connectionproperties=druid.stat.mergesql=true;druid.stat.slowsqlmillis=5000
# 合并多個(gè)druiddatasource的監(jiān)控?cái)?shù)據(jù)
#spring.datasource.useglobaldatasourcestat=true

三、實(shí)例化druid datasource

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
package cn.aduu.config;
import com.alibaba.druid.pool.druiddatasource;
import com.alibaba.druid.support.http.statviewservlet;
import com.alibaba.druid.support.http.webstatfilter;
import org.springframework.boot.context.properties.configurationproperties;
import org.springframework.boot.web.servlet.filterregistrationbean;
import org.springframework.boot.web.servlet.servletregistrationbean;
import org.springframework.context.annotation.bean;
import org.springframework.context.annotation.configuration;
import org.springframework.context.annotation.propertysource;
import javax.sql.datasource;
/**
 * @author zh
 * @classname cn.aduu.config.druidconfiguration
 * @description
 */
@configuration
@propertysource(value = "classpath:druid.properties")
public class druidconfiguration {
  @bean(destroymethod = "close", initmethod = "init")
  @configurationproperties(prefix = "spring.datasource")
  public datasource druiddatasource() {
    druiddatasource druiddatasource = new druiddatasource();
    return druiddatasource;
  }
  /**
   * 注冊一個(gè)statviewservlet
   * @return
   */
  @bean
  public servletregistrationbean druidstatviewservlet(){
    //org.springframework.boot.context.embedded.servletregistrationbean提供類的進(jìn)行注冊.
    servletregistrationbean servletregistrationbean = new servletregistrationbean(new statviewservlet(),"/druid/*");
    //添加初始化參數(shù):initparams
    //白名單:
    servletregistrationbean.addinitparameter("allow","127.0.0.1");
    //ip黑名單 (存在共同時(shí),deny優(yōu)先于allow) : 如果滿足deny的話提示:sorry, you are not permitted to view this page.
    servletregistrationbean.addinitparameter("deny","192.168.1.73");
    //登錄查看信息的賬號密碼.
    servletregistrationbean.addinitparameter("loginusername","admin");
    servletregistrationbean.addinitparameter("loginpassword","123456");
    //是否能夠重置數(shù)據(jù).
    servletregistrationbean.addinitparameter("resetenable","false");
    return servletregistrationbean;
  }
  /**
   * 注冊一個(gè):filterregistrationbean
   * @return
   */
  @bean
  public filterregistrationbean druidstatfilter(){
    filterregistrationbean filterregistrationbean = new filterregistrationbean(new webstatfilter());
    //添加過濾規(guī)則.
    filterregistrationbean.addurlpatterns("/*");
    //添加不需要忽略的格式信息.
    filterregistrationbean.addinitparameter("exclusions","*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*");
    return filterregistrationbean;
  }
}

四、監(jiān)控

訪問 http://localhost:8080/druid, 使用上面配置的賬號密碼。

SpringBoot使用Druid數(shù)據(jù)源的配置方法

SpringBoot使用Druid數(shù)據(jù)源的配置方法

五、測試

?
1
2
3
4
5
6
7
8
9
10
11
@restcontroller
public class hellocontroller{
  private static final logger logger = loggerfactory.getlogger(hellocontroller.class);
  @autowired
  private jdbctemplate jdbctemplate;
  @requestmapping("hello")
  public list<map<string, object>> hello() {
    list<map<string, object>> list = jdbctemplate.queryforlist("select user,password from mysql.user ", new object[]{});
    return list;
  }
}

訪問 localhost:8080/hello

?
1
2
3
4
5
6
7
8
9
10
[
  {
    "user": "root",
    "password": "*81f5e21e35407d884a6cd4a731aebfb6af209e1b"
  },
  {
    "user": "root",
    "password": "*81f5e21e35407d884a6cd4a731aebfb6af209e1b"
  }
]

總結(jié)

以上所述是小編給大家介紹的springboot使用druid數(shù)據(jù)源,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對服務(wù)器之家網(wǎng)站的支持!

原文鏈接:https://blog.csdn.net/qq_36640744/article/details/80096475

延伸 · 閱讀

精彩推薦
539
主站蜘蛛池模板: 日韩黄色影视 | 国产99久久久国产精品下药 | 成人在线视频在线观看 | 真人一级毛片免费 | 日美av在线 | 羞羞的视频在线免费观看 | 九色在线78m | 国产精品区在线12p 午夜视频色 | 国产精品看片 | 国产成人综合在线视频 | 毛片大全| 久久久久久久久久久高潮一区二区 | 成人片免费看 | 99久久久久久久 | 黄色片视频在线观看 | 欧美一区欧美二区 | 欧美日韩亚洲国产 | 精品呦女 | 成人小视频在线播放 | 污片在线观看视频 | 亚洲成人国产综合 | 草碰人人 | www.91sao | 国产电影精品久久 | 草免费视频 | 免费人成在线播放 | 久久精品视频一区二区三区 | 欧美精品色精品一区二区三区 | 2021年无线乱码播放高清完整 | 黄色av一区二区三区 | 成人在线免费视频播放 | 日韩男女在线 | 欧美激情性色生活片在线观看 | 黄色片免费在线 | 欧美视频一二三区 | 激情夜色 | 欧洲精品久久久久69精品 | 欧美一区二区三区久久久久久桃花 | 国产系列 视频二区 | 欧美a视频在线观看 | 亚洲精品3 |