首页> 中文学位 >基于Java的动态代理机制的ORM技术的研究和实现
【6h】

基于Java的动态代理机制的ORM技术的研究和实现

代理获取

目录

文摘

英文文摘

论文说明:插图索引

湖南大学学位论文原创性声明及学位论文版权使用授权书

第1章引言

1.1对象模型存储面临的问题

1.1.1模型不匹配

1.1.2命名体系重复

1.1.3对象模型存储的复杂性

1.2现有主要对象模型存储方式分析

1.3 ORM技术研究现状及发展趋势

1.3.1 ORM技术的研究格局

1.3.2静态ORM实现的缺陷和不足

1.3.3动态ORM技术

1.4实现动态ORM的困难与挑战

1.5本文的研究范围及实践

1.5.1本文的研究范围

1.5.2本文所做的实践工作

1.6本文的组织结构

第2章对象模型的映射方法

2.1映射的基本原理

2.2实体唯一标识的生成机制

2.2.1实体对象的相等性判断

2.2.2标识的空值定义

2.2.3标识的生成机制

2.3非持久化数据的过滤

2.4对象属性的映射

2.4.1基本类型的映射

2.4.2集合类型的映射

2.5对象继承结构的映射

2.6对象关系的映射

2.6.1一对一关系

2.6.2一对多关系

2.6.3多对多关系

2.7关系表格的生成

2.8数据的双向映射过程

2.8.1 OBJECT MODEL到RELATION MODEL的正向映射过程

2.8.2 RELATION MODEL到OBJECT MODEL的逆向映射过程

2.9小结

第3章基于动态代理实现映射的手段

3.1 ORM的实现要求

3.1.1 ODMG接口兼容

3.1.2语法透明

3.2对象的动态代理

3.2.1 Proxy

3.2.2 Interceptor

3.2.3结合两种技术

3.3代理对象的状态切换

3.4类型的动态匹配

3.5映射操作的自动级联

3.6对事务的处理

3.7可扩展功能点的实现

3.8小结

第4章基于动态代理的对象映射系统的设计

4.1运行环境

4.1.1托管环境

4.1.2非托管环境

4.2映射系统结构图

4.3映射规则的格式定义(MAPPING RULE)

4.4持久化中介(PERSISTENCE BROKER)

4.5持久化会话管理(SESSION)

4.6代理工厂(PROXY FACTORY)

4.7状态管理器(STATE MANAGER)

4.8持久化类型(PERSISTENCE TYPE)

4.9事件序列器(ACTION QUEUE)

4.10存储管(STORE MANAGER)

4.11小结

第5章测试及对比分析

5.1测试实验环境

5.2数据映射的复杂性测试

5.3数据映射的效能测试

5.4结论

结束语

参考文献

致谢

附录A攻读学位期间发表学术论文

展开▼

摘要

OPM(对象关系映射)是面向对象技术和数据库技术结合而成的一种全新的信息存储概念。它通过解释和执行映射规则,将对象模型的可持久化信息透明地存储到关系型数据库中,并保证事务边界上对象模型和关系型数据库的一致性。OPM技术主要是按照定义的规则对数据进行拆分和组装,并按照数据的可达性自动生成和填充数据对象。 实现OPM首先要求把对象模型所表示的各种数据映射成关系型表格的形式。它主要涉及到两部分问题的解决:首先是如何表示对象内部的数据;还有就是如何表示对象之间的关系。本文由总而分逐步给出了一种完整的对象模型映射方法。 静态OPM由于实现方式依赖字节码的二次编译,存在着字节码兼容性问题和可扩展等问题。因此本文在Java这一灵活且有普遍应用基础的语言上,研究使用CGLIB提供的动态代理功能和Java语言本身的类反射机制等特性来实现Java对象与关系数据库之间的数据映射这一课题。 将动态代理的机制应用于OPM技术是一个新的应用尝试。它使用代理对象替换原有对象,从而给对象植入持久化能力。同时通过对代理对象存续期间数据的管理和数据类型抽象等手段,完成对象模型在运行期的数据映射,消除了静态OPM所固有的问题。本文着眼于实现,主要工作包括:1)以动态代理的方式给类增加持久化能力。2)使用反射机制获取匹配的映射规则,并通过对象级联完成映射操作,同时切换代理对象的状态。3)基于以上机制,实现一套可完成对象模型自动化映射的部件。 经过后来的实验对比,使用这种实现方法在数据操作的便利性以及映射效率和资源占用等方面都有较好表现。本文不涉及分布式计算情况下的数据同步、数据锁、多线程下对象状态同步和超长事务等问题。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号