diff --git a/pom.xml b/pom.xml index 8cffd594921f85de9a886a3e5b48585633318b9a..9e646bd5bf81c4c812f84fb06d152acddc0e82b3 100644 --- a/pom.xml +++ b/pom.xml @@ -83,6 +83,13 @@ 8.0.11 --> + + + + com.alibaba + druid-spring-boot-starter + 1.1.10 + org.apache.shiro diff --git a/src/main/java/com/fc/test/shiro/config/ShiroFilterMapFactory.java b/src/main/java/com/fc/test/shiro/config/ShiroFilterMapFactory.java index e0bf1392685f898368a3d4d5b50316635cac9582..0d0e38c50b998ba02cd19d49e25de32bf06d3106 100644 --- a/src/main/java/com/fc/test/shiro/config/ShiroFilterMapFactory.java +++ b/src/main/java/com/fc/test/shiro/config/ShiroFilterMapFactory.java @@ -44,6 +44,8 @@ user:例如/admins/user/**=user没有参数表示必须存在用户,当登入 filterChainDefinitionMap.put("/logout", "logout"); //放验证码 filterChainDefinitionMap.put("/captcha/captchaImage**", "anon"); + // 释放 druid 监控画面 + filterChainDefinitionMap.put("/druid/**", "anon"); //对所有页面进行认证 filterChainDefinitionMap.put("/**","authc"); return filterChainDefinitionMap; diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml index 4defede8cfcae0423342e9970984bfd4e72150fb..3f7014c7aa28881b2c953193c4ebb7f484905d29 100644 --- a/src/main/resources/application-dev.yml +++ b/src/main/resources/application-dev.yml @@ -8,7 +8,44 @@ spring : hikari: maxLifetime: 1765000 maximumPoolSize: 15 - +# druid连接池配置 + druid: + #引用上面的JDBC配置 + url: ${spring.datasource.url} + username: ${spring.datasource.username} + password: ${spring.datasource.password} + driver-class-name: ${spring.datasource.driverClassName} + # 配置初始化连接数大小 + initial-size: 10 + # 最大连接数 + max-active: 50 + #最小连接数 + min-idle: 10 + #获取连接等待超时时间 + max-wait: 5000 + pool-prepared-statements: true #是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql下建议关闭。 + max-pool-prepared-statement-per-connection-size: 20 + validation-query: SELECT 1 FROM DUAL + validation-query-timeout: 20000 + test-on-borrow: false #申请连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。 + test-on-return: false #归还连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。 + test-while-idle: true #建议配置为true,不影响性能,并且保证安全性。申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效。 + time-between-eviction-runs-millis: 60000 #配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 + min-evictable-idle-time-millis: 300000 #一个连接在池中最小生存的时间,单位是毫秒 + # StatViewServlet配置。(因为暴露的监控信息比较敏感,支持密码加密和访问ip限定) + stat-view-servlet: + enabled: true + url-pattern: /druid/* + login-username: admin + login-password: admin + filter: + stat: + log-slow-sql: true + slow-sql-millis: 1000 + merge-sql: true + wall: + config: + multi-statement-allow: true #mysql 8.0 #spring : # datasource : @@ -18,4 +55,38 @@ spring : # password : root # hikari: # maxLifetime: 1765000 -# maximumPoolSize: 15 \ No newline at end of file +# maximumPoolSize: 15 +# 连接池配置 +# druid: +# 引用上面的JDBC配置 +# url: ${spring.datasource.url} +# username: ${spring.datasource.username} +# password: ${spring.datasource.password} +# driver-class-name: ${spring.datasource.driverClassName} +# initial-size: 10 +# max-active: 50 +# min-idle: 10 +# max-wait: 5000 +# pool-prepared-statements: true #是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql下建议关闭。 +# max-pool-prepared-statement-per-connection-size: 20 +# validation-query: SELECT 1 FROM DUAL +# validation-query-timeout: 20000 +# test-on-borrow: false #申请连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。 +# test-on-return: false #归还连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。 +# test-while-idle: true #建议配置为true,不影响性能,并且保证安全性。申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效。 +# time-between-eviction-runs-millis: 60000 #配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 +# min-evictable-idle-time-millis: 300000 #一个连接在池中最小生存的时间,单位是毫秒 +# # StatViewServlet配置。(因为暴露的监控信息比较敏感,支持密码加密和访问ip限定) +# stat-view-servlet: +# enabled: true +# url-pattern: /druid/* +# login-username: admin +# login-password: admin +# filter: +# stat: +# log-slow-sql: true +# slow-sql-millis: 1000 +# merge-sql: true +# wall: +# config: +# multi-statement-allow: true \ No newline at end of file diff --git a/src/main/resources/application-prod.yml b/src/main/resources/application-prod.yml index 49fd44e2ec1e24c6e68d87ed514003191de2e418..b73c7c60199a7c82e3aaa1b3c60b8b44aa7900e1 100644 --- a/src/main/resources/application-prod.yml +++ b/src/main/resources/application-prod.yml @@ -7,4 +7,39 @@ spring : password : jxzx123 hikari: maxLifetime: 1765000 - maximumPoolSize: 15 \ No newline at end of file + maximumPoolSize: 15 + # druid连接池配置 + druid: + #JDBC配置 + url: ${spring.datasource.url} + username: ${spring.datasource.username} + password: ${spring.datasource.password} + driver-class-name: ${spring.datasource.driverClassName} + #连接池配置 + initial-size: 10 + max-active: 50 + min-idle: 10 + max-wait: 5000 + pool-prepared-statements: true #是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql下建议关闭。 + max-pool-prepared-statement-per-connection-size: 20 + validation-query: SELECT 1 FROM DUAL + validation-query-timeout: 20000 + test-on-borrow: false #申请连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。 + test-on-return: false #归还连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。 + test-while-idle: true #建议配置为true,不影响性能,并且保证安全性。申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效。 + time-between-eviction-runs-millis: 60000 #配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 + min-evictable-idle-time-millis: 300000 #一个连接在池中最小生存的时间,单位是毫秒 + # StatViewServlet配置。(因为暴露的监控信息比较敏感,支持密码加密和访问ip限定) + stat-view-servlet: + enabled: true + url-pattern: /druid/* + login-username: admin + login-password: admin + filter: + stat: + log-slow-sql: true + slow-sql-millis: 1000 + merge-sql: true + wall: + config: + multi-statement-allow: true \ No newline at end of file