数据源和连接池的区别

更新时间:2023-05-15 17:36:16 阅读: 评论:0

一直没有搞清楚,JDBC的数据源与连接池是怎么一样的关系,直到今天做系统的时候,遇到了连接池如果管理有效的连接及资源的占用,释放的问题. php是什么意思
数据源并不等于连接池,它不是必须要求实现连接池的,即连接池是数据源的一种.下面的一段网上摘要可以佐证:
除了提高性能和可伸缩性以外,JDBC应用看不出在获取DataSource对象来实现连接池和不获取之间有任何不同.然而,在应用服务器和驱动级实现之间有一些重要的区别.
一个基础DataSource实现,没有实现连接池,典型的,由JDBC驱动厂商提供.在基础DataSource实现中,下面的是真实的:
obeyConnection.clo方法关闭物理连接并释放相关资源.
在包括连接池的DataSource实现中,在幕后有一系列重大事件发生.在如上实现中,下面的是真实的:
never again
DataSource实现包括一个实现的指定连接池模块会管理一缓冲区的PooledConnection对象.DataSource
如何管理公司对象典型的由应用服务器实现作为一层在驱动实现ConnectionPoolDataSource和PooledConnection接口的顶层.
全国公共英语等级考试
pasio
裸聊服务Connection.clo方法关闭逻辑句柄,但物理连接还存在.连接池管理器被通知指定的PooledConnection对象现在可以重用了.如果应用程序试图重用逻辑句柄,Connection实现会抛出一个SQLException.
单一一个物理PooledConnection对象会在生命期内产生许多逻辑Connection对象.对一个给定的PooledConnection对 象,只有最新生成的逻辑Connection对象才有效.当相关的Connection被调用时,任何先前存在 的Connection对象会被自动关闭.监听器(连接池管理器)不会被通知该事件.
lateral一个连接池管理器通过调用PooledConnection.clo方法关闭物理连接.该方法典型的只有在特定环境下被调用:当应用服务器遇到正常的关闭,当连接缓冲区正在被重新初始化,或者当应用服务器收到
一个事件指出连接出现一个无法恢复的错误时.chu
在使用conection及statement后应该关闭,不然会由于垃圾收集器不能有效的释放资源而导致数据库的游标使用超过限制,而出现SQLException异常.所以在以后使用jdbc的时候不要把createStatement和prepareStatement都应该要放在循环外面,而且使用了这些Statment后,及时关闭.最好
dooly是在执行了一次executeQuery、executeUpdate等之后,如果不需要使用结果集(ResultSet)的数据,就马上将Statment关闭.
参考链接:
/twiki/bin/view/PgSQL/ConnectionPool 关于连接池的文档
收藏中另一篇关于JDBC游标问题的文章

本文发布于:2023-05-15 17:36:16,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/90/109607.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:连接   实现   物理
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图