[发明专利]基于代理的数据对象持久化方法及装置无效
申请号: | 200810304398.2 | 申请日: | 2008-09-05 |
公开(公告)号: | CN101403971A | 公开(公告)日: | 2009-04-08 |
发明(设计)人: | 李永武 | 申请(专利权)人: | 李永武 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100107北京市朝阳*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 代理 数据 对象 持久 方法 装置 | ||
技术领域
本发明涉及数据持久化领域,具体涉及一种基于代理的数据对象持久化方法及装置。
背景技术
在计算机系统中,将数据存储到外部存储介质的过程称为数据的持久化。持久化的数据不会因系统掉电而丢失。需要长期保存的数据都需要进行持久化。持久化存储设备的容量比计算机系统内存的容量要大得多,大量数据需要存储的时候也要使用持久化技术。
数据持久化技术的内容非常丰富。现有的数据持久化技术的方式主要有两种:关系式数据库和文件。在这两种技术基础上,又派生出多种技术:在关系式数据库基础上派生出对象关系映射技术,在文件基础上派生出可扩展标记语言(XML,Extensible MarkupLanguage)技术等等。
当前与本发明最相近的技术是对象-关系映射技术。对象-关系映射技术是基于结构化查询语言(SQL,Structured Query Language)的一种数据持久化技术。它通过建立程序的对象和关系式数据库表的映射,从而使得程序员能够以对象的方式访问数据库表,实现数据的持久化操作。它是面向对象技术和结构化查询语言的混合体。
使用对象关系映射技术实现数据持久化的过程如下:
1、根据对象定义,在数据库中创建表;
2、为程序的对象和数据库表建立映射关系;
3、根据需求编写类SQL语句,通过这些语句实现对持久化数据的操作;
4、在运行时,在写入操作中,对象关系映射引擎把程序的对象转换为数据库表的行,在读取操作中,把结果填充到程序的对象中。
上述方案,要求编程人员必须有SQL知识,必须了解关系式数据的概念及其工作方式;必须在设计对象类的时候考虑到如何映射到表;在把复杂的业务对象进行持久化的时候,一般需要一个解耦合的过程。上述问题增加了变成人员的工作量,提高了编程门槛。另外,不同软件厂商的对象关系映射平台之间也存在差异,这增加了软件移植的工作量。
发明内容
本发明实施例提供一种基于代理的数据对象持久化的方法及装置,使得编程人员能够如同访问内存中的数据对象一样方便地访问持久化的数据对象,从而简化持久化数据访问的编程,屏蔽各种数据持久化底层技术的差异,增加应用系统的可移植性。
本发明的基本思想是:通过对数据对象的方法的代理,使得数据对象的使用者,只需要定义数据对象的访问接口,就可以实现数据对象的持久化。
本发明实施例提供的数据持久化方法,包括:根据用户定义的接口,在运行时,生成接口的代理对象;由代理对象代理对持久化对象的操作。其中,
生成接口代理对象的步骤包括:为每个需要访问的持久化的对象,根据其接口定义创建代理对象;代理对象根据标识与持久化对象关联;
对持久化对象的操作包括:创建持久化对象、删除持久化对象、设置持久化对象内容、读取持久化对象内容、对象命名。其中,
创建持久化对象的步骤包括:为对象生成唯一对象标识;根据接口定义和对象标识,在持久化空间中创建持久化对象,在运行空间创建代理对象;
删除持久化对象的步骤包括:从持久化空间删除持久化对象;把代理对象标记为删除;
设置持久化对象内容,对于固定复合类型的对象,如果属性值不是代理对象,则在持久化空间中保存属性的值,否则,保存其标识。对于可变复合类型的对象,如果元素的值不是代理对象,则在持久化空间中保存元素的值,否则,保存其标识。
读取持久化对象内容,对于固定复合类型的对象,如果属性值不是代理类型,则直接把持久化空间的属性值转换为运行空间的属性值对象,否则,为其创建一个代理对象;对于可变复合类型的对象,如果元素值不是代理类型,则直接把持久化空间的元素值转换为运行空间的属性值对象,否则,为其创建一个代理对象;
对象命名,在持久化空间中建立一个一对一的字符串(名字)与对象标识的映射,通过对此映射的插入、删除、修改和查询操作实现对象的命名、除名、重命名、根据名字取得对象操作。
本发明实施例提供的数据持久化装置包括:一个存储库单元、一个以上的代理对象单元、一个以上的适配器单元;其中,
存储库单元,用于缓存数据、创建代理对象、删除对象;
代理对象单元,即数据接口的代理对象单元,用户通过对代理对象的操作,实现对持久化数据的操作;对于固定复合类型的接口,代理其属性的读取、修改;对于可变复合类型的接口,代理其元素的增加、删除、查找、修改;
适配器单元,用于把根据适配器接口来的操作转换为对具体的持久化底层平台的操作;所有的适配器单元,使用统一的适配器接口,从而屏蔽各种持久化底层平台的差异。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于李永武,未经李永武许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810304398.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:空气簧中心销定位装置
- 下一篇:一种钢包滑板装置
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置