- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据库连接池概况与关键部分(共1789字)
数据库连接池概况与关键部分(共1789字)
本文
一、数据库连接池基本概念及工作原理
数据库连接池作为一种将链接作为资源管理的实体,此资源就是数据库的连接。连接池的基本思想就是预先设立一部分放置于内存中的固定对象以备使用。而建立一个数据库连接池,就可将链接发过去进行查询,从而来获取结果。一个链接在生命周期内所能处理的查询数据是没有限制的,通过采用连接池结束,只需从内存中取得而不用反复的建立。在内存中,连接池可对链接进行管理,使其利用率提高。
连接池一般使用过程主要有四个部分:
1、发送连接请求:连接池将按照发送请求的顺序进行排序,并一对一的对其配置给他们链接的处理对象。连接池最大的优势在于可以允许多个链接同时发送申请,而连接池可以对其进行判断。
2、对发送进行连接处理:连接池可以对列表中的使用和空闲的部分进行维护,连接池从其中空闲的部分取出链接后归还链接之前,放回使用池,使整个连接池利用率最大化。
3、取出链接环节:连接池按照上一步的操作将空闲部分的链接取出。
4、回收链接环节:当请求模块使用完毕时,将链接返回到空闲池。模块登记链接后,链接就从使用列表中去除并自动回到列表中等待新的请求。
二、数据库连接池技术关键部分
1、连接池配置:数据库连接池需要多少数量的链接这是关键所在,如放少了则整个循环受到影响,多了则浪费内存资源。配置的策略为:首先要根据硬件系统的配及软件环境的应用请求而定,最先配置出一个连接池的数量及最大配置量的链接数量,从而来判断合适的连接数。
2、并发控制:在有很多数量的线程对共享资源进行同时访问,则要考虑到线程之间的同步问题,来确保不会在访问过程中出现逻辑性错误。共享资源则为连接池,而要改变连接池的属性就要对其进行同步化处理。
3、定时检测:在连接池自我管理的过程中,通过定时地对每个链接对象的状态和连接的数量来判断完成的。管理者可以设置连接池的参数来管理连接池中的连接最大使用次数及最大空闲时间,以此来约束连接池。
4、复式连接:此种模式在复用链接中较为常见,每个数据库连接都保留其引用的数量,以此来记录连接使用者的数量。具体而言,就是采用了使用池和空闲池的技术,空闲池中的链接被分配出去之后,就可以采取复用来计算最小的链接方法。
三、数据库访问的过程
用户由ServletBeans执行数据库的访问,调用连接池类ConnectionPool的addTask()方法,addTask()执行过程为:
⑴调用ThreadPool线程中的getRequesterID()以此来得到任务申请。
⑵实例化查询任务QueryTask对象。
⑶调用ThreadPool线程池类的addTask()将查询任务对象添加到线程池中。
⑷调用ThreadPool线程池类addTAskListener()添加任务完成时间监听,过程结束后返回用户处。
监听者通过调用查询信息类SQLInformation对象的getResult()的方法得到查询数据,保存在DbInterface类中,用户通过调用DBInterface类的getQueryResult()方法得到查询结果。DbInterface类的用法如下:
⑴建立类对象。调用构造函数DBInterface,其中dbCon为连接池对象,log为日志对象,thteadPool为线程池对象。
⑵执行SQl语句。调用DBInterface的方法,DBInterface将自动SQL添加到线程中,执行完SQL线程语句将结果和异常传递给DBInterface类。
⑶调用DBInterface的方法getQueryResult()和hasNextQueryResult()得到查询结果。
⑷如运行出现异常,通过DBInterface的方法getQueryResult()和hasNextQueryResult()得到异常情况。
您可能关注的文档
- 教育学视域下高校教师思政教育探析(共7715字).doc
- 教育学对我国教育的影响(共3083字).doc
- 教育学课程价值取向实践(共2456字).doc
- 教育学院教学方法论文(共2888字).doc
- 教育实践下的高职教育论文(共1730字).doc
- 教育实践创业教育论文(共2121字).doc
- 教育工会大学文化建构角色的实现路径(共5022字).doc
- 教育导向转变英语教育论文(共1687字).doc
- 教育市场下艺术教育论文(共4162字).doc
- 教育心理学发展研究(4篇)(共13366字).doc
- 2025中国冶金地质总局所属在京单位高校毕业生招聘23人笔试参考题库附带答案详解.doc
- 2025年01月中国人民大学文学院公开招聘1人笔试历年典型考题(历年真题考点)解题思路附带答案详解.doc
- 2024黑龙江省农业投资集团有限公司权属企业市场化选聘10人笔试参考题库附带答案详解.pdf
- 2025汇明光电秋招提前批开启笔试参考题库附带答案详解.pdf
- 2024中国能建葛洲坝集团审计部公开招聘1人笔试参考题库附带答案详解.pdf
- 2024吉林省水工局集团竞聘上岗7人笔试参考题库附带答案详解.pdf
- 2024首发(河北)物流有限公司公开招聘工作人员笔试参考题库附带答案详解.pdf
- 2023国家电投海南公司所属单位社会招聘笔试参考题库附带答案详解.pdf
- 2024湖南怀化会同县供水有限责任公司招聘9人笔试参考题库附带答案详解.pdf
- 2025上海烟草机械有限责任公司招聘22人笔试参考题库附带答案详解.pdf
文档评论(0)