DruidConfig.java 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. package jnpf.database.config;
  2. import com.alibaba.druid.support.jakarta.StatViewServlet;
  3. import com.alibaba.druid.support.jakarta.WebStatFilter;
  4. import jnpf.database.util.ConnUtil;
  5. import jnpf.database.util.DataSourceUtil;
  6. import jnpf.exception.DataException;
  7. import org.springframework.beans.factory.annotation.Autowired;
  8. import org.springframework.boot.web.servlet.FilterRegistrationBean;
  9. import org.springframework.boot.web.servlet.ServletRegistrationBean;
  10. import org.springframework.context.annotation.Bean;
  11. import org.springframework.context.annotation.Configuration;
  12. import javax.sql.DataSource;
  13. import java.util.Arrays;
  14. import java.util.HashMap;
  15. import java.util.Map;
  16. /**
  17. * 数据源配置
  18. *
  19. * @author JNPF开发平台组
  20. * @version V3.1.0
  21. * @copyright 引迈信息技术有限公司
  22. * @date 2021/3/16 8:49
  23. */
  24. @Configuration
  25. public class DruidConfig {
  26. @Autowired
  27. DataSourceUtil dataSourceUtil;
  28. // @Bean
  29. public DataSource druid() throws DataException {
  30. return ConnUtil.getDruidDataSource(dataSourceUtil);
  31. }
  32. /**
  33. * 配置Druid的监控
  34. * 配置一个管理后台的Servlet
  35. * @return
  36. */
  37. @Bean
  38. public ServletRegistrationBean statViewServlet(){
  39. ServletRegistrationBean bean = new ServletRegistrationBean(new StatViewServlet(), "/druid/*");
  40. Map<String, String> initParams = new HashMap<>(4);
  41. //配置druid页面监控的账户密码
  42. initParams.put("loginUsername", "jnpf");
  43. initParams.put("loginPassword","123456");
  44. //默认就是允许所有访问
  45. initParams.put("allow","");
  46. //黑名单 注意 黑名单优先于 allow白名单加载 两个名单中不可重复
  47. initParams.put("deny","192.168.10.21");
  48. bean.setInitParameters(initParams);
  49. return bean;
  50. }
  51. /**
  52. * 配置一个web监控的filter
  53. * @return
  54. */
  55. @Bean
  56. public FilterRegistrationBean webStatFilter(){
  57. FilterRegistrationBean bean = new FilterRegistrationBean();
  58. bean.setFilter(new WebStatFilter());
  59. Map<String, String> initParams = new HashMap<>(16);
  60. initParams.put("exclusions","*.js,*.css,/druid/*");
  61. bean.setInitParameters(initParams);
  62. bean.setUrlPatterns(Arrays.asList("/*"));
  63. return bean;
  64. }
  65. }