内容系转载,
参看:http://my.oschina.net/hokkaido/blog/85366 ; 以及
参看:http://hi.baidu.com/delhomme/item/709f8acdae88ff384594166d;以及
三个自己关心的概念及比较:
1.什么是数据源?
答:数据源定义的是连接到实际数据库的一条路径而已,数据源中并无真正的数据,它仅仅记录的是
你连接到哪个数据库,以及如何连接的,如odbc数据源。也就是说数据源仅仅是数据库的连接名称,
一个数据库可以有多个数据源连接。
2.什么是ODBC?
答:开放数据库互连(Open Database Connectivity,ODBC)是微软公司开放服务结构(WOSA,
Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提
供了一组对数据库访问的标准API(应用程序编程接口)。这些API利用SQL来完成其大部分任务。ODBC
本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。
3.什么是数据库连接池?
答:数据库连接是负责分配、管理和释放数据库连接。使用数据库连接池是因为数据库连接是一种关键
的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出。如weblogic、tomcat、
WebSphere容器都实现了数据库连接池,但是数据库连接池是可以独立出来自己编码实现的。
4.数据源与数据库连接池关系?
答:我们通过第三方工具来使用数据源来实现对数据库数据操作。一个数据库连接池可以给它创建多个
数据源,如一个人有别名;如果单纯使用jdbc连接数据库是web容器你要什么就去连什么。这样做没人
看不耗内存,量大了你就死机。可以这样理解,数据源表示一个与数据库的连接(传统)或者表示很多
与数据库的连接(使用数据库连接池)。数据源是用于访问连接池或多池的JNDI对象,多池的主要目的
是提高可用性和在一组连接池间实现负载均衡。