日期:2014-05-20  浏览次数:20581 次

数据源和连接池有什么区别?有人想过吗?
这两个概念有点混淆,大家讨论下啊

------解决方案--------------------
打错了,应该是“连接池维护着一些连接”。
------解决方案--------------------
数据源是指数据的来源,比如数据库。
连接是指这样一个“池子”,池子中的每个东西都是连接数据源的一个“连接”,这样别人想连接数据源的时候可以从这个“池子”里取,用完以后再放回来供以后其他想使用的人使用。
------解决方案--------------------

我们一般说的数据源指的就是数据库~

比较形象点的说,连接池就像数据源的代理人,
如我们需要连接(connection)直接找他(连接池)要就可以了,不需要找数据源要;
不用的连接也是直接还给连接池~~

也就是有了连接池,我们没必要直接找数据源打交道了~
连接池在你的程序所在的机器内存,数据源不一定~~
并且数据源和连接池会保持一定数量的连接~
这样我们访问数据库的时候就不需要找数据源要连接,
直接在本地内存中取得连接,可以提高程序的性能~~


------解决方案--------------------
数据源的存在是为了抽象。比如数据库、Excel表格甚至是文本文件都可以作为原始数据,通过数据源抽象并提供统一的接口。

连结池的存在是为了效率,因为实例化一个连接很耗费资源,而连接又有可重用的特征,所以可以把一定数量的连接放在连结池里面以提高效率。
------解决方案--------------------
楼上说的都那么抽象,让我用我的自身理解方式说给你
每个连接好比水站的分水管,连接池好比水站,水站的源头好比数据库。
连接池可以控制分水管的数量等其他行为。