DataBase 一些基本概念

4 篇文章 0 订阅
2 篇文章 0 订阅
  • JDBC  Java DataBase Connectivity

JDBC是用java书写的数据库连接类,开发人员可以根据已经封装好的JDBC API进行开发,JDBC主要操作对象是关系数据,并且具有良好的可移植性,写好了对于sybase的访问程序,可以用到Oracle的访问

需要认识到JDBC的重要性,他是JAVA连接数据库的标准方法

  • ODBC Open DataBase COnnectivity

ODBC是为解决易购数据库间的数据共享而产生的,现已成为WOSA(The Windows Open System Architecture)的主要部分和基于windows环境的一种数据库访问接口标准ODBC,为易购数据库访问提供统一接口,允许应用程序以SQL为数据存取标准,存取不同DBMS管理的数据;使应用程序直接操纵DB中的数据,免除随DB的改变而改变。

ODBC由三个部分组成:

  1. 应用程序
  2. 驱动管理器
  3. 驱动程序

ODBC应用程序主要解决以下工作

  1. Request a connection(i.e.session) with a data source.

  2. Send SQL requests to the data source.

  3. Define storage areas and data formats for the result of SQL requests.

  4. Request results.

  5. Process errors.

  6. Request a commit or rollback of operations for transcation control.

  7. Terminate a connection a data source.

ODBC驱动管理器

驱动管理器本身是MS Windows中的一个动态连接链接库文件(ODBC.DLL)。应用程序透过驱动管理器去加载并连接数据源的驱动程序(driver)并连接数据源(三者的关系)。驱动管理器主要工作如下:

  1. Uses ODBC INI file to map a data source name to a specific driver DLL.
  2.  Processes server ODBC initialization calls.
  3.  Provides entry points to ODBC functions for each driver.
  4.  Provides parameter validation and sequence validation for ODBC calls.

ODBC驱动程序

驱动程序也是一个动态连接链接库文件,当驱动程序使能驱动管理器工作时,数据源的驱动程序需要作出相应,执行与驱动管理要求相关的函数,并与数据源做沟通

  1. Establishes a connect to a data source.
  2. Submits requests to a data sources.
  3. Translates data to or from other formats,if requested by the application.
  4. Return results to the application.
  5. Formats errors into standard error codes and returns them to the application.
  6. Declares and manipulates cursors if necessary (invisible to the application).
  7. Initiates transactions if the data source requires explicit transaction initiation(invisible to the app).
  • DAO Data Access Object

DAO是一个数据访问接口,也即一种应用程序编程接口(API),存在于微软的Visual Basic中,它允许程序员请求微软的Access数据库访问,在J2EE中,他们在逻辑上的作用是一样的

  • 连接池

连接池是创建和管理一个连接的缓冲池的技术,这些连接准备好被任何需要它们的线程使用,连接池使用基于的事实是:正常需要处理的事务是很短的,比起新建立一个连接,不如一开始就建立一些连接,不用的时候就闲置,需要的时候就从闲置的连接里面选取一个

这里和线程池的关系就联系起来了,因为线程池就是创建一定数量的线程备用,需要的时候就唤醒闲置的线程。

数据库连接池技术的思想非常简单,将数据库连接作为对象存储在一个Vector对象中,一旦数据库连接建立后 ,不同的数据库访问请求就可以共享这些连接,这样,通过复用这些已经建立的连接,极大地节省系统资源和时间。

连接池实现模式:一个连接池类(DBConnectionPool)和一个连接池管理类(DBConnectionPoolManager)。

总结:JDBC和ODBC都是有关数据库连接和操作的API,而连接池概念更多的倾向于实现技术,就是处理并发任务和线程池的一个方法,也被广泛采用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值