[发明专利]拱坝浇筑施工仿真对象的持久化方法在审
申请号: | 201810758630.3 | 申请日: | 2018-07-11 |
公开(公告)号: | CN109241551A | 公开(公告)日: | 2019-01-18 |
发明(设计)人: | 刘全;田正;宋子达;胡志根;许金静;张路;柳智龙;冯琛;蒋侠宇 | 申请(专利权)人: | 武汉大学 |
主分类号: | G06F17/50 | 分类号: | G06F17/50;G06F16/22;G06Q10/06;G06Q50/08 |
代理公司: | 武汉科皓知识产权代理事务所(特殊普通合伙) 42222 | 代理人: | 俞琳娟 |
地址: | 430072 湖*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 仿真对象 持久化 数据库 属性数据 数据类型 拱坝 恢复 浇筑 偏移量恢复 对象信息 仿真过程 实例属性 关联表 字符串 导出 构建 记录 取回 施工 写入 保存 重建 转换 | ||
1.一种拱坝浇筑施工仿真对象的持久化方法,其特征在于,包括以下步骤:
步骤1.持久化环境构建:
建立拱坝浇筑施工仿真软件和数据库管理系统的映射关系,包括:仿真对象和数据库表的映射关系,仿真对象实例和数据库表记录的映射关系,和仿真对象属性和数据库表字段的对应关系;
步骤2.仿真对象的导出:
步骤2-1.选定一个对象实例;
步骤2-2.选定该对象实例的一个属性;
步骤2-3.根据属性的数据类型转换数据格式;
步骤2-4.按照步骤2-2和步骤2-3将所有属性数据转换为字符串;
步骤2-5.生成将对象写入数据库的SQL语句;
步骤2-6.完成该对象实例持久化;
步骤2-7.按照步骤2-1至步骤2-6持久化所有对象实例;
步骤3.仿真对象的恢复:
步骤3-1.根据仿真对象取得其关联表;
步骤3-2.选定关联表的一条记录;
步骤3-3.建立仿真对象的一个新实例;
步骤3-4.选定新实例的一个属性;
步骤3-5.取得该属性的属性名和数据类型;
步骤3-6.从当前记录取得当前属性值;
步骤3-7.利用数值、类型、偏移量恢复属性数据;
步骤3-8.按照步骤3-4至步骤3-7从当前记录恢复关联实例的所有属性;
步骤3-9.按照步骤3-2至步骤3-8从关联表恢复仿真对象的所有实例。
2.根据权利要求1所述的拱坝浇筑施工仿真对象的持久化方法,其特征在于:
其中,在步骤1中,是利用属性保存对应的数据库表名,利用专门指针数组,保存与该类相关的仿真对象实例数据,利用属性映射数组存储映射对应关系。
3.根据权利要求1所述的拱坝浇筑施工仿真对象的持久化方法,其特征在于:
其中,在步骤2-3中,基于持久化信息环境,根据选定的属性取得其对应的属性数据类型信息,将属性数据类型信息转换为正确的字符串类型和格式;
在步骤2-4中,针对所选定实例,利用步骤2-2和步骤2-3,将实例的所有属性转换成字符串类型;
在步骤2-5中,利用SQL插入语句的模板,将前面生成的各属性数据的字符串组合成插入对应数据库表的SQL语句;
在步骤2-6中,将SQL语句提交给数据库管理系统,即完成实例Oi的持久化操作;对于实例的对象识别码在数据库表中已经存在的情况,需要先将其删除,再运行步骤2-5的插入语句;
在步骤2-7中,针对所有实例,执行步骤2-1至步骤2-6,先列后行,完成对仿真对象的导出。
4.根据权利要求1所述的拱坝浇筑施工仿真对象的持久化方法,其特征在于:
其中,在步骤3-1中,针对特定的仿真对象,根据其持久化映射关系,取得该对象与数据库表的对应关系;
在步骤3-2中,在数据库表中定位到特定的记录:对于根据对象ID恢复特定实例的情况,利用ID定位到特定记录;而对于恢复所有实例的情况,可以首先定位到第1条记录;
在步骤3-7中,在内存中首先定位到该仿真对象实例的起点地址,利用偏移量和数据类型进行统一的变量定位,并进行赋值;
在步骤3-8中,针对每个属性,重复步骤3-4至步骤3-7,先行后列,将该实例的所有属性全部赋值完成;
在步骤3-9中,针对每个需要恢复的数据库记录,重复上述步骤3-2~步骤3-8,将该对象的所有实例全部从对应的数据库表中恢复出来。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉大学,未经武汉大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810758630.3/1.html,转载请声明来源钻瓜专利网。