| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> Spring Boot(九):数据库连接池Druid -> 正文阅读 |
|
[大数据]Spring Boot(九):数据库连接池Druid |
数据库连接池简介1、为什么要使用数据库连接池? 创建数据库连接(TCP连接建立时需要三次握手)是一个很耗时的过程,在使用完之后,还需要不断的释放建立的连接(销毁时需要四次握手),对资源的损耗比较大。 数据库连接池会将已经创建好的连接保存在池中,当有请求来时,直接使用已经创建好的连接访问数据库,这样可以省略创建连接和销毁连接的过程,从而提高性能。这样做的缺点是,可能某些时候完全没有数据库请求,但是也保持了数据库的最小连接数,浪费了资源,不过这种资源浪费相对于完全不采用数据库连接池还是很有优势的。 2、常用的数据库连接池 目前市场上常用的数据库连接池有:C3P0、Proxool、DBCP、Tomcat JDBC Pool、HiKariCP 和 Druid 性能方面:HiKariCP > Druid > Tomcat JDBC Pool > DBCP > C3P0 > Proxool 活跃度方面:C3P0、Proxool、DBCP的版本都已经很久没更新了,Tomcat JDBC Pool、HiKariCP 和 Druid仍处于活跃的更新中。Spring Boot 2.0 将默认的数据库连接池从Tomcat JDBC Pool 改为了HiKariCP。 虽然HikariCP已经很优秀,但是对于国内用户来说,可能对于Druid更为熟悉,Druid是阿里开源的数据库连接池,除了良好的性能和稳定性外,它还加入了监控统计、防御SQL注入等功能。 Druid的使用1、引入依赖 在pom.xml中引入Druid的依赖
注: 1)如果打包时报如下警告,说明Druid引入的版本太高了,降低版本即可
2、配置application-dev.yml配置文件
注: 1)配置含义的详细说明见文章的第三模块“Druid的配置详解” 3、实体类和dao层配置 在blog数据库中,创建一个article表,然后创建它的实体类和dao层: article表的实体类:
dao层:
4、修改启动类 在启动类DemoApplication上增加@MapperScan注解
注: 1)@MapperScan注解的属性basePackages配置的为dao层的包路径 5、测试验证 编写ArticleController:
注: 1)业务逻辑复杂时,Controller和Mapper中间会有Service层来处理业务逻辑,现在我们就简单的测试一下Druid数据库连接池,所以直接使用Controller调用Mapper了 Druid的配置详解更多内容,请关注公众号“图南随笔”: ? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 9:30:40- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |