原文地址:http://otl.sourceforge.net/otl3_class.htm
OTL4.0的设计目标与其说是一个传统的C++类库,还不如说是一个应用程序:内部更加复杂(与C++库相比)外部接口非常简洁完备。OTL4.0很受泛型程序设计范式的影响,泛型程序设计范式由1998年的C++标准所采纳的the Standard Template Library (STL) 的作者Alexander Stepanov所促进。
OTL4.0有一个用OTL stream concept实现的模板框架。这个框架由模板类和内联函数组成。模板类用普通的类集作为参数。类集将数据库API的实际实现以类类型参数形式提供给框架。
这种实现被称为对给定数据库API的OTL-adapter。在OTL4.0中,OTL-adapter支持如下数据库的APIs:
- Oracle Call Interface for Oracle 7/8/8i /9i/10g/10gR2/11g (OCI7/8/8i/9i/10g/10gR2/11g)
- Open Data Base Connectivity (ODBC)
- MS SQL Server 2005/2008's SQL Native Client (SNAC)
- DB2 Call Level Interface (CLI)
- Informix CLI
- TimesTen CLI
- SAP DB CLI
适配器只是低层次的,简单的包装了数据库的APIs。这些适配类集直接在框架中使用。OTL模板真正的扩展了数据库API的函数调用,因此OTL4.0基本上是在数据库APIs层次上工作。
在框架中直接使用模板框架和OTL适配器,形成了如下各个具体OTL类的一个实例: