1.什么是连接池

数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个:

释放空闲时间超过最大空闲时间的数据库连接,来避免因为没有释放数据库连接而引起的数据库连接遗漏。这项数据能明显提高对数据库操作的性能

2.没有连接池的缺点

之前我们每次处理一个请求,都是调用DAO层下具体方法,每一个方法都是新建数据库连接,然后处理业务,然后关闭连接,整个过程就像下面这张图描述的样子。

3.用了连接池的效果

为了解决2中的问题,采用数据库连接池的技术。

上面DAO到DB之间,我们提前创建了一个连接池,假如说10个,第一个用户对应的连接处理完了,不会立马关闭,而是放回到连接池中,让后面等待的数据库访问对象去接着使用创建好的连接对象。这样大大节约了连接对象的创立时间和对象关闭时间的消耗,提升了数据库的访问连接性能。

总结:连接池的作用

解决建立数据库连接耗费资源和时间很多的问题,提高数据库服务器

————————————————

版权声明:本文为CSDN博主「Anthony_tester」的原创文章,遵循 CC 4.0 BY-SA

版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/u011541946/article/details/90734402

java数据库连接的作用_java数据库连接池的作用相关推荐

  1. java线程池有什么作用_java线程池的作用是什么?线程池介绍

    你知道java中线程池的作用是什么吗?那么究竟什么是线程池呢?都有哪些类型呢?让我们对以上的问题来进行详细的了解吧. 一.java线程池作用 第一个我们先来对它的作用进行一下简单的介绍,使用线程池的优 ...

  2. java 线程作用_Java 线程池的作用

    现在服务器端的应用程序几乎都采用了"线程池"技术,这主要是为了提高系统效率.因为如果服务器对应每一个请求就创建一个线程的话,在很短的一段时间内就会产生很多创建和销毁线程动作,导致服 ...

  3. java线程不执行_java线程池,阿里为什么不允许使用Executors?

    带着问题 阿里Java代码规范为什么不允许使用Executors快速创建线程池? 下面的代码输出是什么? ThreadPoolExecutor executor = new ThreadPoolExe ...

  4. java assert使用场景_Java线程池的四种用法与使用场景

    一.如下方式存在的问题 new Thread() { @Override public void run() { // 业务逻辑 }}.start(); 1.首先频繁的创建.销毁对象是一个很消耗性能的 ...

  5. java连接jpi方式_Java数据库连接(Java Database Connectivity)

    什么是jdbc? JDBC的全称是Java数据库连接(Java Database Connectivity),它是一套用于执行SQL语句的Java API.应用程序可通过这套API连接到关系型数据库, ...

  6. java项目数据库一直连接_Java数据库连接

    Java数据库连接[编辑] 概述 Java数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如 ...

  7. java 10个线程_Java线程池创建10个线程

    Q1:在Java并发编程中,如何扩展和优化线程池? 在java中多线程并不陌生,在一定的范围内,多线程数量的增加会明显提升整个系统的吞吐性能,但是线程本身会极大的耗费内存空间,线程的频繁创建和回收也极 ...

  8. java package作用_java import、package作用与用法

    java import.package作用与用法 有些人写了一阵子Java,可是对於Java 的package 跟import 还是不太了解很多人以為原始码 .java 档案中的import 会让编译 ...

  9. java new thread参数_java线程池01-ThreadPoolExecutor构造方法参数的使用规则

    为了更好的使用多线程,JDK提供了线程池供开发人员使用,目的在于减少线程的创建和销毁次数,以此达到线程的重复利用. 其中ThreadPoolExecutor是线程池中最核心的一个类,我们先简单看一下这 ...

最新文章

  1. Oracle的三种循环
  2. mybatis-plus 错误java.lang.NoClassDefFoundError: org
  3. 服务器挂起文件怎么删除,撤消挂起的更改或查看挂起的更改的列表
  4. Cucumber 入门一
  5. MyEclipse Build path contains duplicate entry
  6. 重温Servlet学习笔记--response对象
  7. Eclipse高级使用技巧
  8. CentOS7升级openssh8.0及升级后无法root登陆处理
  9. TimeLine下载地址
  10. html自动选择省市,jQuery中国省市区地址三级联动插件Distpicker
  11. 创业者需要了解的基本财务知识
  12. 房屋托管平台“朴邻”签约法大大,电子合同提升客户签约体验
  13. python实现图片rgb通道分离
  14. error: no viable conversion from 'MyCalendar *' to 'MyCalendar'
  15. 狗狗的年龄的python编程_狗狗与人年龄换算表,终于知道狗狗多大了!
  16. 在MATLAB环境下使用深度学习网络DeepLabV3+进行语义分割(云图分割)
  17. 谈谈大数据时代企业如何进行数据治理体系建设
  18. 17岁少年捅死想要性侵女友的歹徒:我坐牢,也不能让她受伤
  19. vue框架在ie浏览器下的问题以及解决方法
  20. 2.9亿元信托财产“原状返还” ,信托公司“去通道”还要走多久?

热门文章

  1. Javascript的prototype
  2. UIView常用的一些方法小记之setNeedsDisplay和setNeedsLayout
  3. 使用EF框架实现MVC的增删改查功能!!!Entity Framework
  4. 大佬带你详解Python反爬虫措施以及爬虫编写注意事项
  5. RAID 与 LVM 磁盘阵列技术
  6. linux php7扩展查看,linux安装PHP7以及扩展
  7. 快速排序 c++_算法浅谈——分治算法与归并、快速排序(附代码和动图演示)
  8. python编程试题定位列表元素的函数是_笨办法学Python 习题 34: 访问列表的元素
  9. tcp retransmission 出现的原因_浅谈TCP的keepalive机制
  10. matlab的dft谱分析,数字信号处理基于matlab(用DFT作谱分析,窗函数的设计)