日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

druid java直接调用_Spring Boot使用Druid连接池的示例代码

發(fā)布時間:2023/12/15 javascript 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 druid java直接调用_Spring Boot使用Druid连接池的示例代码 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Druid是Java語言中最好的數據庫連接池。Druid相比于其他的數據庫連接池,有兩大特性:

監(jiān)控數據庫,有利于分析線上數據庫問題

更容易擴展,同時也很高效。

今天演示一下Spring Boot集成Druid。

實戰(zhàn)

1、添加Maven依賴。

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

org.springframework.boot

spring-boot-starter-web

org.springframework.boot

spring-boot-starter-jdbc

com.alibaba

druid-spring-boot-starter

1.1.6

配置Druid

2、Druid應用的配置。

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來配置。

@Configuration

public class DruidConfig {

@Bean

public JdbcTemplate jdbcTemplate(){

return new JdbcTemplate(druidDataSource());

}

// ConfigurationProperties可以直接把應用配置的spring.datasource.druid屬性開頭的值注入到DruidDataSource中

@ConfigurationProperties(prefix = "spring.datasource.druid")

@Bean(initMethod = "init",destroyMethod = "close")

public DruidDataSource druidDataSource(){

DruidDataSource druidDataSource = new DruidDataSource();

// 添加druid的監(jiān)控過濾器,當前只演示監(jiān)控的功能,因此只有一個過濾器,可以實現多個過濾器

LinkedList filtersList = new LinkedList();

filtersList.add(filter());

druidDataSource.setProxyFilters(filtersList);

return druidDataSource;

}

@Bean

public Filter filter(){

StatFilter statFilter = new StatFilter();

// SQL執(zhí)行時間超過2s種的被判定為慢日志

statFilter.setSlowSqlMillis(2000);

//顯示慢日志

statFilter.setLogSlowSql(true);

//合并SQL,有時,一些相同的慢日志過多影響閱讀,開啟合并功能

statFilter.setMergeSql(true);

return statFilter;

}

// 監(jiān)控的面板

@Bean

public ServletRegistrationBean servletRegistrationBean(){

// 注冊自己的Sevlet

return new ServletRegistrationBean(new StatViewServlet(),"/druid/*");

}

}

3、新建SQL執(zhí)行測試

使用JDBCTeplate選取數據庫中的數據,我們只是演示Druid的監(jiān)控效果。

@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 idList = new LinkedList();

jdbcTemplate.query("select * from sh_test1", new RowCallbackHandler() {

@Override

public void processRow(ResultSet rs) throws SQLException {

idList.add(rs.getInt(1));

}

});

return idList;

}

}

運行查看效果

5、演示完畢

到這一步,Druid已經可以在Spring Boot中使用了,Druid提供了很多監(jiān)控的選項,文章篇幅有限, 只介紹一下Druid集成Spring Boot的用法。

最后

這篇文章演示了一下Druid在SpringBoot中的使用。有關Druid的使用請看下面的參考。

參考

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

總結

以上是生活随笔為你收集整理的druid java直接调用_Spring Boot使用Druid连接池的示例代码的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。