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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Alibaba Druid连接池接入

發布時間:2023/12/10 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Alibaba Druid连接池接入 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

maven引入

<dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.17</version> </dependency> <dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>1.1.17</version> </dependency>

?

配置

spring:datasource:type: com.alibaba.druid.pool.DruidDataSourcedriverClassName: org.postgresql.Driverurl: jdbc:postgresql://10.0.0.189:5432/testusername: postgrespassword: test123druid:#初始化連接大小initial-size: 8#最小空閑連接數min-idle: 5#最大連接數max-active: 10#查詢超時時間query-timeout: 30000#事務查詢超時時間transaction-query-timeout: 30000#關閉空閑連接超時時間remove-abandoned-timeout: 1800filters: stat,config

?

編寫測試

@Autowired JdbcTemplate jdbcTemplate; @GetMapping("test") public String test() {List<Map<String,Object>> list= jdbcTemplate.query("select * from os.auth_user limi t 10", new ResultSetExtractor<List<Map<String,Object>>>() {@Overridepublic List<Map<String, Object>> extractData(ResultSet rs) throws SQLException, DataAccessException {while (rs.next()){System.out.print("Column 1 returned ");System.out.println(rs.getString(1));}return null;}});return "1"; }

?

注意:此處sql故意寫錯目的是為了報錯,顯示如下信息,標紅處可以看出走了druid

2019-06-18 14:20:05 14151 [http-nio-18081-exec-1] ERROR o.a.c.c.C.[.[.[.[dispatcherServlet] - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: StatementCallback; bad SQL grammar [select * from os.auth_user limi t 10]; nested exception is org.postgresql.util.PSQLException: ERROR: syntax error at or near "t"

位置:33] with root cause

org.postgresql.util.PSQLException: ERROR: syntax error at or near "t"

位置:33

at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2440)

at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2183)

……

at com.alibaba.druid.filter.FilterChainImpl.statement_executeQuery(FilterChainImpl.java:2831)

at com.alibaba.druid.filter.FilterAdapter.statement_executeQuery(FilterAdapter.java:2504)

at com.alibaba.druid.filter.FilterChainImpl.statement_executeQuery(FilterChainImpl.java:2828)

at com.alibaba.druid.filter.FilterAdapter.statement_executeQuery(FilterAdapter.java:2504)

at com.alibaba.druid.filter.FilterEventAdapter.statement_executeQuery(FilterEventAdapter.java:302)

at com.alibaba.druid.filter.FilterChainImpl.statement_executeQuery(FilterChainImpl.java:2828)

at com.alibaba.druid.proxy.jdbc.StatementProxyImpl.executeQuery(StatementProxyImpl.java:221)

at com.alibaba.druid.pool.DruidPooledStatement.executeQuery(DruidPooledStatement.java:296)

……

?

?

監控配置

注:監控只支持Servlet,不支持react

import com.alibaba.druid.support.http.StatViewServlet; import com.alibaba.druid.support.http.WebStatFilter; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; 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;@Configuration public class DruidConfiguration {/*** 注冊Servlet信息, 配置監控視圖** @return*/@Bean@ConditionalOnMissingBeanpublic ServletRegistrationBean druidServlet() {ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(new StatViewServlet(), "/druid/*");//白名單:servletRegistrationBean.addInitParameter("allow","192.168.6.195");//IP黑名單 (存在共同時,deny優先于allow) : 如果滿足deny的話提示:Sorry, you are not permitted to view this page.servletRegistrationBean.addInitParameter("deny","192.168.6.73");//登錄查看信息的賬號密碼, 用于登錄Druid監控后臺servletRegistrationBean.addInitParameter("loginUsername", "admin");servletRegistrationBean.addInitParameter("loginPassword", "admin");//是否能夠重置數據.servletRegistrationBean.addInitParameter("resetEnable", "true");return servletRegistrationBean;}/*** 注冊Filter信息, 監控攔截器** @return*/@Bean@ConditionalOnMissingBeanpublic FilterRegistrationBean filterRegistrationBean() {FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean();filterRegistrationBean.setFilter(new WebStatFilter());filterRegistrationBean.addUrlPatterns("/*");filterRegistrationBean.addInitParameter("exclusions", "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*");return filterRegistrationBean;} }

總結

以上是生活随笔為你收集整理的Alibaba Druid连接池接入的全部內容,希望文章能夠幫你解決所遇到的問題。

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