数据源 与数据库连接池的 关系
2017-02-10 20:32
148 查看
而我个人认为这两者有不同的:
(1)数据源是一种数据库对编程提供的一个接口,每个数据源对应一个数据库。
(2)连接池只是存放数据库连接对象的一个缓冲池,需要数据连接的时候从缓冲池中取就行了。
(3)连接池可以管理数据源。
用TCP来连接你的应用程序与数据库是一件昂贵的事情(很费时的事情),开发者可以通过用连接池来反复的使用数据库的连接。比起每次请求都用TCP来连一次数据库,连接池只有在不存在有效的连接时才新建一个TCP连接。当关闭一个连接的时候,它会被放到池中,它仍然会保持与数据库的连接,这样就可以减少与数据库的TCP连接次数。
数据源是指数据的来源,比如数据库。连接池是指这样一个“池子”,池子中的每个东西都是连接数据源的一个“连接”,这样别人想连接数据源的时候可以从这个“池子”里取,用完以后再放回来供以后其他想使用的人使用。
我们一般说的数据源指的就是数据库~
数据源是指数据的来源的概括,包含了数据库位置 和 数据库类型等信息,实际上是一种数据连接的抽象。
也可以说,你要得到的信息存放的地方的概括(包括 存放信息的数据库类型、数据库的地址等等信息的概括)。
-----------------------------------------------------------------------------------
Oracle数据库 创建数据源
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url="jdbc:oracle:thin:@localhost:1521:orcl";
String user="test";
String password="test";
Connection conn= DriverManager.getConnection(url,user,password);
------------------------------------------------------------------------------------
连接池是指这样的一个“池子”:
该池子中的每个东西都是连接数据源的一个“连接”,
这样别人想连接数据源的时候可以从这个“池子”里取,
用完以后再放回来供以后其他想使用的人使用。
我们一般说的数据源指的就是数据库~
比较形象点的说,连接池就像数据源的代理人,
如我们需要连接(connection)直接找他(连接池)要就可以了,不需要找数据源要;
不用的连接也是直接还给连接池~~
也就是有了连接池,我们没必要直接找数据源打交道了~
连接池在你的程序所在的机器内存,数据源不一定~~
并且数据源和连接池会保持一定数量的连接~
这样我们访问数据库的时候就不需要找数据源要连接,
直接在本地内存中取得连接,可以提高程序的性能~~
上说的都那么抽象,让我用我的自身理解方式说给你
每个连接好比水站的分水管,连接池好比水站,水站的源头好比数据库。
连接池可以控制分水管的数量等其他行为。
相关文章推荐
- 最简单的数据源,数据库连接池。
- 数据源与连接池关系
- 数据库连接池,数据源,数据库连接,JNDI,JAVA
- 数据库连接池,数据源,数据库连接,JNDI,JAVA
- 数据源与连接池关系
- 数据源,连接池,数据库连接之间的关系
- 数据库连接池,数据源,数据库连接,JNDI,JAVA
- 01_数据库连接池,数据源,ResultSetMetaData,jdbc优化
- 数据源(数据库连接池的简易实现)
- JDBC 学习笔记(三)—— 数据源(数据库连接池):DBCP数据源、C3P0 数据源以及自定义数据源技术
- 01_数据库连接池,数据源,ResultSetMetaData,jdbc优化
- JDBC 学习笔记(三)—— 数据源(数据库连接池):DBCP数据源、C3P0 数据源以及自定义数据源技术
- 数据库连接池(数据源)2: 开源数据源的使用DBCP和C3P0
- 查找实体,只限关系数据源的报表模型
- 数据源与连接池的关系
- 数据源和数据库连接池
- JavaWeb入门实战—数据库连接池(数据源)
- 配置tomcat数据库连接池及使用数据库连接池(hibernate数据源配置和使用)
- 数据库连接池HikariCP创建数据源demo
- 03_dbcp数据源依赖jar包,DBCP中API介绍,不同过dbcp方式使用dbcp数据库连接池,通过配置文件使用dbcp数据库连接池