• 整合Druid数据源


    1.数据库连接池简介
    数据库连接池是个容器,负责分配、管理数据库连接(Connection)。它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个;
    释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏。

    好处:
             资源重用。 提升系统响应速度。避免数据库连接遗漏。

    2.数据库连接池实现
    标准接口:DataSource
    官方(SUN)提供的数据库连接池标准接口,由第三方组织实现此接口。

    功能:获取连接
    Connection getConnection()
    常见的数据库连接池:DBCP、C3Po、Druid

    Druid(德鲁伊)
    Druid连接池是阿里巴巴开源的数据库连接池项目
    功能强大,性能优秀,是Java语言最好的数据库连接池之一。

    1.导入jar包

    1. com.alibaba
    2. druid
    3. 1.1.10

    2.在yml文件中配置Druid数据源配置

    1. #数据库配置
    2. spring:
    3. datasource:
    4. driver-class-name: com.mysql.cj.jdbc.Driver
    5. url: jdbc:mysql://127.0.0.1:3306/studentgrades?serverTimezone=Asia/Shanghai
    6. username: root
    7. password: 2001
    8. type: com.alibaba.druid.pool.DruidDataSource #指定数据源的类型
    9. initialSize: 5 #初始化时建立物理连接的个数
    10. minIdle: 1 #最小连接池数量
    11. maxActive: 20 #最大连接池数量

    3.配置后在config包中设置数据源配置

    1. import com.alibaba.druid.pool.DruidDataSource;
    2. import com.alibaba.druid.support.http.StatViewServlet;
    3. import org.springframework.boot.context.properties.ConfigurationProperties;
    4. import org.springframework.boot.web.servlet.ServletRegistrationBean;
    5. import org.springframework.context.annotation.Bean;
    6. import org.springframework.context.annotation.Configuration;
    7. import javax.sql.DataSource;
    8. import java.util.HashMap;
    9. /*
    10. @Configuration 配置注解 表示此类是springBoot项目中一个配置类,sprngboot启动时会扫描
    11. */
    12. @Configuration
    13. public class DruidDataSourceConfig {
    14. /*
    15. @Bean == 作用在方法上,方法中会产生一个对象,最终把此对象交给spring容器
    16. */
    17. @Bean
    18. @ConfigurationProperties(prefix = "spring.datasource")
    19. public DataSource druid() {
    20. DruidDataSource dataSource = new DruidDataSource();
    21. //dataSource.setInitialSize();
    22. return dataSource;
    23. }
    24. //后台监控:web.xml
    25. @Bean
    26. public ServletRegistrationBean statViewServlet(){
    27. ServletRegistrationBean bean
    28. =new ServletRegistrationBean<>(new StatViewServlet(),"/druid/*");
    29. //后台需要有人登录,账号密码配置
    30. HashMap initParameters=new HashMap<>();
    31. //增加配置
    32. initParameters.put("loginUsername","admin"); //登录的key,固定的loginUsername loginPassword
    33. initParameters.put("loginPassword","123456");
    34. //允许谁可以访问
    35. initParameters.put("allow","");
    36. //禁止谁可以访问 initParameters.put("用户名","IP");
    37. bean.setInitParameters(initParameters);//设置初始化参数
    38. return bean;
    39. }
    40. }

    4.访问后端:输入开始设置的密码之后

     便可以访问查看数据源状况

     

  • 相关阅读:
    uniapp-vue3-微信小程序-标签选择器wo-tag
    ajax同步与异步,json-serve的安装与使用,node.js的下载
    localForage.js
    Java中的封装的实现,访问限定符、包
    RapidLayout:中英文版面分析推理库
    动作捕捉系统通过SDK与MATLAB/Simulink通信
    传感器信息系统中的节能收集研究(Matlab代码实现)
    「中间件」Redis分布式缓存关键知识
    JavaScript基础语法_JavaScript循环
    【汇编】“转移”综述、操作符offset、jmp指令
  • 原文地址:https://blog.csdn.net/weixin_57197500/article/details/128087166