spring-boot-druid-demo

来源:互联网 发布:h5 css js手机开发 编辑:程序博客网 时间:2024/05/20 06:06

背景说明

druid号称最好的java数据库连接池,自带监控,给线上SQL问题定位带来不少便利。

这个demo主要引入druid并启用其监控功能。

数据源配置

# 数据库访问配置# 主数据源,默认的spring.datasource.type=com.alibaba.druid.pool.DruidDataSourcespring.datasource.driver-class-name=com.mysql.jdbc.Driverspring.datasource.url=jdbc:mysql://localhost:3306/testspring.datasource.username=rootspring.datasource.password=123456# 下面为连接池的补充设置,应用到上面所有数据源中# 初始化大小,最小,最大spring.datasource.initialSize=5spring.datasource.minIdle=5spring.datasource.maxActive=20# 配置获取连接等待超时的时间spring.datasource.maxWait=60000# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 spring.datasource.timeBetweenEvictionRunsMillis=60000# 配置一个连接在池中最小生存的时间,单位是毫秒 spring.datasource.minEvictableIdleTimeMillis=300000spring.datasource.validationQuery=SELECT 1 FROM DUALspring.datasource.testWhileIdle=truespring.datasource.testOnBorrow=falsespring.datasource.testOnReturn=false# 打开PSCache,并且指定每个连接上PSCache的大小 spring.datasource.poolPreparedStatements=truespring.datasource.maxPoolPreparedStatementPerConnectionSize=20# 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙 spring.datasource.filters=stat,wall,log4j# 通过connectProperties属性来打开mergeSql功能;慢SQL记录spring.datasource.connectionProperties=druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000# 合并多个DruidDataSource的监控数据#spring.datasource.useGlobalDataSourceStat=true

配置监控统计功能

采用显示实例化Bean方式实例化数据源、过滤器、Servlet启用druid监控。

@Configurationpublic class DruidConfig {  /**   * 注册数据源   */  @Bean  @ConfigurationProperties(prefix = "spring.datasource")  public DataSource druidDataSource() {    return new DruidDataSource();  }  /**   * 注册Servlet   */  @Bean  public ServletRegistrationBean druidServlet() {    ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(        new StatViewServlet(), "/druid/*");    //白名单:    servletRegistrationBean.addInitParameter("allow", "127.0.0.1");    //IP黑名单 (存在共同时,deny优先于allow) : 如果满足deny的话提示:Sorry, you are not permitted to view this page.    servletRegistrationBean.addInitParameter("deny", "192.168.1.73");    //登录查看信息的账号密码.    servletRegistrationBean.addInitParameter("loginUsername", "clj");    servletRegistrationBean.addInitParameter("loginPassword", "123456");    //是否能够重置数据.    servletRegistrationBean.addInitParameter("resetEnable", "false");    return servletRegistrationBean;  }  /**   * 注册Filter   */  @Bean  public FilterRegistrationBean filterRegistrationBean() {    FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean();    filterRegistrationBean.setFilter(new WebStatFilter());    filterRegistrationBean.addUrlPatterns("/*");    filterRegistrationBean        .addInitParameter("exclusions", "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*");    return filterRegistrationBean;  }

然后启动项目后访问 http://yourdomain/druid/index.html 即可查看数据源及SQL统计等。

工程地址

https://github.com/clj198606061111/spring-boot-druid-demo

参考文章

1、http://www.cnblogs.com/azhqiang/p/5712266.html

2、http://blog.csdn.net/gebitan505/article/details/54948438

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 买了商铺付了首付商铺倒闭了怎么办 宝宝刚满月不喜欢在床上睡怎么办 别人给我打了收货款不发货怎么办 业务员私收货款公司不发货怎么办 付款后商家没发货也不退钱怎么办 苹果7P修过主板耗电严重怎么办 oppo手机进水了开不了机怎么办 手机弯了变形但不影响使用怎么办 拼多多留错电话怎么办如果已经发货 苹果6手机后壳变形了怎么办 京东退货保修卡丢了怎么办 如果京东买的显示器屏碎了怎么办 在微信上买东西退货不退钱怎么办 手机分期付款不还款被起诉了怎么办 朋友用我的花呗分期不还钱怎么办 朋友用我身份证办分期不还钱怎么办 我手机号被别人绑定信用卡了怎么办 5s用不了4g网络怎么办 红米手机返回键没了怎么办 小米手机进水了开不了机怎么办 手机返回键和菜单键失灵怎么办 苹果5s指纹按键坏了怎么办 小米手机安卓系统耗电量大怎么办? 苹果5s充不进去电怎么办 苹果手机6s返回键失灵怎么办 本人被骗同时被利用骗了别人怎么办 京东取消订单后货到了该怎么办 京东电信日租卡流量顶置了怎么办 苹果6s进水后闪光灯不亮怎么办 华为手机情景义停车事项过期怎么办 拼多多付款后商品下架了怎么办 淘宝上买化妆品买到假货了怎么办 找苹果官网解id发票丢了怎么办 客人已交订金但要取消宴席怎么办 京东买的小米电视碎屏了怎么办 京东购买的电视碎屏了怎么办 淘宝上买手机不能用不给退怎么办 天猫申请退货退款卖家不处理怎么办 在淘宝买到货到付款的假苹果怎么办 跟朋友买手机买到假货怎么办 在淘宝网上买到不合格的产品怎么办