激情久久久_欧美视频区_成人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教程 - Spring Boot使用Druid連接池的示例代碼

Spring Boot使用Druid連接池的示例代碼

2021-05-09 12:48Real_man Java教程

Druid是Java語言中最好的數(shù)據(jù)庫連接池。這篇文章主要介紹了Spring Boot使用Druid連接池的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

druid是java語言中最好的數(shù)據(jù)庫連接池。druid相比于其他的數(shù)據(jù)庫連接池,有兩大特性:

  1. 監(jiān)控?cái)?shù)據(jù)庫,有利于分析線上數(shù)據(jù)庫問題
  2. 更容易擴(kuò)展,同時(shí)也很高效。

今天演示一下spring boot集成druid。

實(shí)戰(zhàn)

1、添加maven依賴。

spring boot版本使用的是1.x的,2.x的版本druid starter還不支持。不過自定義也是沒問題的。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<!--starter-web 方便我們查看效果-->
<dependency>
 <groupid>org.springframework.boot</groupid>
 <artifactid>spring-boot-starter-web</artifactid>
</dependency>
<!--使用mybatis也可以,druid提供的只是連接池-->
<dependency>
 <groupid>org.springframework.boot</groupid>
 <artifactid>spring-boot-starter-jdbc</artifactid>
</dependency>
 
<dependency>
 <groupid>com.alibaba</groupid>
 <artifactid>druid-spring-boot-starter</artifactid>
 <version>1.1.6</version>
</dependency>

Spring Boot使用Druid連接池的示例代碼

配置druid

2、druid應(yīng)用的配置。

?
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
server:
 port: 9011
 
spring:
 datasource:
 type: com.alibaba.druid.pool.druiddatasource
 driver-class-name: com.mysql.jdbc.driver
 druid:
  initial-size: 5
  max-active: 10
  min-idle: 5
  max-wait: 60000
  pool-prepared-statements: true
  max-pool-prepared-statement-per-connection-size: 20
  validation-query: select 1
  validation-query-timeout: 60000
  test-on-borrow: false
  test-on-return: false
  test-while-idle: true
  time-between-eviction-runs-millis: 60000
  filter:
  stat:
   log-slow-sql: true
   db-type: mysql
   slow-sql-millis: 2000
  stat-view-servlet:
  login-username: druid
  login-password: druid
  allow: 127.0.0.1
  url-pattern: /druid/*
  username: root
  password: 123456
  url: jdbc:mysql://127.0.0.1:3306/test?characterencoding=utf-8

通過javabean的配置更靈活一些,我們通過javabean來配置。

?
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
@configuration
public class druidconfig {
 
 @bean
 public jdbctemplate jdbctemplate(){
  return new jdbctemplate(druiddatasource());
 }
 
 // configurationproperties可以直接把應(yīng)用配置的spring.datasource.druid屬性開頭的值注入到druiddatasource中
 @configurationproperties(prefix = "spring.datasource.druid")
 @bean(initmethod = "init",destroymethod = "close")
 public druiddatasource druiddatasource(){
  druiddatasource druiddatasource = new druiddatasource();
  
  // 添加druid的監(jiān)控過濾器,當(dāng)前只演示監(jiān)控的功能,因此只有一個(gè)過濾器,可以實(shí)現(xiàn)多個(gè)過濾器
  linkedlist<filter> filterslist = new linkedlist();
  filterslist.add(filter());
  druiddatasource.setproxyfilters(filterslist);
  
  return druiddatasource;
 }
 
 @bean
 public filter filter(){
  statfilter statfilter = new statfilter();
  // sql執(zhí)行時(shí)間超過2s種的被判定為慢日志
  statfilter.setslowsqlmillis(2000);
  //顯示慢日志
  statfilter.setlogslowsql(true);
  //合并sql,有時(shí),一些相同的慢日志過多影響閱讀,開啟合并功能
  statfilter.setmergesql(true);
  return statfilter;
 }
 
 // 監(jiān)控的面板
 @bean
 public servletregistrationbean servletregistrationbean(){
  // 注冊(cè)自己的sevlet
  return new servletregistrationbean(new statviewservlet(),"/druid/*");
 }
}

3、新建sql執(zhí)行測(cè)試

使用jdbcteplate選取數(shù)據(jù)庫中的數(shù)據(jù),我們只是演示druid的監(jiān)控效果。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
@restcontroller
@springbootapplication
public class daoapplication {
 public static void main(string[] args) {
  springapplication.run(daoapplication.class,args);
 }
 
 @autowired
 jdbctemplate jdbctemplate;
 
 @requestmapping("/test")
 public list test(){
  final list<integer> idlist = new linkedlist<integer>();
  jdbctemplate.query("select * from sh_test1", new rowcallbackhandler() {
   @override
   public void processrow(resultset rs) throws sqlexception {
     idlist.add(rs.getint(1));
   }
  });
 
  return idlist;
 }
}

運(yùn)行查看效果

Spring Boot使用Druid連接池的示例代碼

Spring Boot使用Druid連接池的示例代碼

Spring Boot使用Druid連接池的示例代碼

5、演示完畢

到這一步,druid已經(jīng)可以在spring boot中使用了,druid提供了很多監(jiān)控的選項(xiàng),文章篇幅有限, 只介紹一下druid集成spring boot的用法。

最后

這篇文章演示了一下druid在springboot中的使用。有關(guān)druid的使用請(qǐng)看下面的參考。

參考

[druid常見用法] (https://github.com/alibaba/druid/wiki/%e5%b8%b8%e8%a7%81%e9%97%ae%e9%a2%98)

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。

原文鏈接:https://www.jianshu.com/p/d396d2f924c5

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 在线播放一区二区三区 | 久久久成人精品视频 | 欧美精品久久久久久久久老牛影院 | 成人在线视频一区 | 日产精品久久久一区二区开放时间 | 欧美男女爱爱视频 | 久久久久久久一区二区 | 日本成人高清视频 | 久久中文免费 | 91精品国产91久久久久久蜜臀 | 在线免费观看欧美 | chinesexxx少妇露脸 | 91社影院在线观看 | 日本大片在线播放 | 久久网综合 | 一区二区三区黄色 | 国产交换3p国产精品 | 久久久久性 | 毛片免费一区二区三区 | 亚久久| 午夜激情视频免费 | 亚洲特黄a级毛片在线播放 激情视频免费看 | 久久欧美亚洲另类专区91大神 | h视频在线观看免费 | 久久国产免费 | 黄色片观看 | 一区二区三区日韩 | 久久久久国产一区二区三区不卡 | 久久我不卡 | 精品一区二区三区日本 | 亚洲一区 国产精品 | 成人一级毛片 | 日韩黄色片免费看 | 黄色大片免费网站 | 麻豆视频在线观看免费网站 | 孕妇体内谢精满日本电影 | 91精品国产综合久久久动漫日韩 | 亚洲第九十九页 | 黄色免费不卡视频 | 免费大香伊蕉在人线国产 | 国产亚洲小视频 |