Caché Objects | 第一章 | 简介

Caché Objects 技术为应用程序开发人员提供了轻松创建高性能、基于对象的数据库应用程序的方法。其功能包括:

  • 一个功能强大的对象模型,包括继承、属性、方法、集合、关系、用户定义的数据类型和流。
  • 一种灵活的对象持久化机制,允许将对象存储在本机 Caché 数据库以及外部关系数据库中。
  • 控制持久类的数据库方面,包括索引、约束和引用完整性。
  • 一个易于使用的事务和并发模型,包括通过导航加载对象的功能 - 只需引用一个对象就可以将其从数据库“旋转”到内存中。
  • 通过 Caché 统一数据架构与 Caché SQL 自动集成。
  • 与 Java、C++ 和 ActiveX 的互操作性。
  • 自动 XML 支持。
  • 功能强大的多用户对象开发环境:Studio。

您可以通过多种方式使用 Caché 对象,包括:

  • 定义事务处理应用程序的数据库和/或业务组件。
  • 使用 Caché Server Pages 创建基于 Web 的用户界面。
  • 定义可从 ODBC 或 JDBC 调用的基于对象的存储过程。
  • 提供对旧应用程序的对象/关系访问。

一、Caché 对象结构

Caché 对象技术包含以下主要组件:

  • 类字典(class dictionary) :类定义(通常称为元数据)的存储库,每个定义都描述一个特定的类。此存储库存储在 Caché 数据库中。Caché SQL 引擎也使用类字典,负责维护对 Caché 数据的同步对象和关系访问。
  • 类编译器(class compiler) : 一组将类定义转换为可执行代码的程序。
  • 对象运行时系统(object runtime system ) :Caché 虚拟机中内置的一组功能,用于支持正在运行的程序中的对象操作(例如对象实例化、方法调用和多态性)。
  • Caché 类库(Caché class library) : 每个 Caché 安装附带的一组预构建类。这包括用于为用户定义的类(如持久性或数据类型)提供行为的类,以及旨在在应用程序中直接使用的类(如电子邮件类)。
  • 各种语言绑定(language bindings ) : 代码生成器和运行时组件的组合,提供对 Caché 对象的外部访问。这些绑定包括 Caché Java 绑定、Caché ActiveX 绑定和 Caché C++ 绑定。
  • 各种网关(gateways) : 服务器端组件,使 Caché 对象能够访问外部系统。这些网关包括 Caché SQL 网关和 Caché Activate ActiveX 网关。

二、类定义和类字典

每个类都有一个定义,该定义指定它包含的成员(属性、方法等)以及类范围的特征(如超类)。这些定义包含在类字典中,而类字典本身存储在 Caché 数据库中。

2.1 创建类定义

可以通过多种方式创建类定义

  • 使用 Studio。使用 Caché 类定义的主要方法是使用 Studio 开发环境。
  • 使用 XML。类定义具有基于 XML 的外部表示形式。通常,此格式用于在外部存储类定义(例如在源代码管理系统中)、部署应用程序或仅用于共享代码。您还可以通过简单地生成相应的 XML 类定义文件并将其加载到 Caché 系统中,以编程方式创建新的类定义。
  • 使用 API。Caché 包括一组类定义类,这些类提供对类字典的对象访问。您可以使用它们来观察、修改和创建类定义。
  • 使用 SQL DDL。DDL 语句定义的任何关系表都会自动转换为等效的类定义,并放置在类字典中。

2.2 类字典

每个 Caché 命名空间都包含自己的类字典,用于定义该命名空间的可用类。有一个特殊的“CACHELIB”数据库,作为 Caché 的一部分安装,其中包含 Caché 类库的类的定义和可执行代码。这些类称为系统类,它们都是名称以“%”字符开头的包的一部分,例如 %Library.Persistent(%Library 可以缩写,因此 %String%Library.String 的缩写)。

每个 Caché 命名空间都会自动配置,以便其类字典除了包含自己的类外,还可以访问 CACHELIB 数据库中的系统类定义和代码。通过这种机制,所有命名空间都可以直接使用 Caché 类库中的类。

类字典包含两种不同类型的数据:

  • 定义数据 — 用户创建的实际类定义。
  • 编译数据 — 由于编译类定义而生成的数据也会被存储。此数据包括继承解析的结果;也就是说,它列出了给定类的所有已定义和继承的成员。类编译器使用它来使其他编译更有效率;应用程序还可以使用它(通过适当的接口)来获取有关类成员的运行时信息。

类字典将其数据存储在一组全局变量(持久数组)中,其名称以 ^odd 开头。这些数组的结构可能会随着新版本的 Caché 而改变,因此应用程序不应直接观察或修改这些结构。

三、Caché 类库

Caché 类库包含一组预生成的类。它会自动安装在 CACHELIB 数据库中的每个 Caché 系统中。您可以使用 Caché 提供的在线类文档系统查看 Caché 类库的内容。

Caché 类库包含许多包,每个包都包含一系列类。其中一些是内部的,Caché 对象将它们用作其实现的一部分。其他类提供专为在应用程序中使用的功能而设计的功能。

Caché 类库中的主要包如下:

Package描述
%ActivateCaché Activate ActiveX 网关使用的类。请参见使用 Caché ActiveX 网关
%Compiler类编译器使用的内部类。
%CSPCaché 服务器页面(Caché Server Pages)使用的类。请参见使用 Caché 服务器页面 (CSP)
%csr一组生成的内部类,用于实现标准 CSP 规则。
%LibraryCaché“行为”类的核心集合(例如 %Persistent)。还包括各种数据类型、集合和流类。
%Net一组类,提供各种与 Internet 相关的功能(如电子邮件、HTTP 请求等)。请参阅使用 Caché Internet Utilities
%Projection一组投影类,用于为用户类生成客户端代码。请参阅“类投影”一章。
%SOAP可用于在 Caché 中创建 Web 服务和 Web 客户端的类。请参见在 Caché 中创建 Web 服务和 Web 客户端
%SQLCaché SQL 使用的内部类。
%Studio工作室使用的内部类。
%SYSTEM可通过$System特殊变量访问的各种系统 API 类。
%XML用于在 Caché 中提供 XML 和 SAX 支持的类。有关信息,请参见将对象投影到 XML 和使用 Caché XML 工具
  • 21
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Caché是新一代高性能数据库技术,称之为“后关系型”。作为后关系型数据库,它整合了对象数据库访问、高性能的SQL访问、强大的多维数据访问——这三种方法能够天衣无缝地同时访问相同的数据。数据只要在单一的整合 数据字典中描述一次,就可以被这三种方法访问。Caché提供了比关系型技术更加高效的性能,更大的扩展性,更快速的编程能力和更加便捷的使用性能。 Caché不仅仅是一种纯的数据库技术。Caché包括一个应用服务器,这个服务器提供高级对象编程,并且可以很容易地与很多技术集成。Caché还提供高性能的运行环境,这一运行环境采用了举世无双的数据缓存技术。 Caché还在另一方面远远胜过了传统的数据库技术。Caché为开发复杂的、基于网页应用程序提供了丰富的集成环境。Caché服务页(CSP)技术可以进行快速开发,动态产生网页。上千个用户甚至在在比较差的硬件条件下也可以同时访问数据上的应用程序。 对于那些不基于浏览器的应用,用户接口可以用任何一个流行的客户端接口技术编写,如VB,Delphi,Java,或者C++。剩下的工作都交给Caché运行,这样可以得到最好的结果(最快的编程效率,最高的性能,最低的维护成本)。另一方面,Caché也提供了与其他技术的交互,支持大多数通用的开发工具,所以开发方法的选择范围很大。 不要嫌分值高,44页的权威资料,对于需要进行后关系型数据库开发的人来说是绝对超值,对于不需要人来说则没有什么价值,这是我用5元现金从豆丁网买来的资料.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值