[发明专利]实体对象的创建方法和实体对象创建装置有效
申请号: | 201110233116.6 | 申请日: | 2011-08-15 |
公开(公告)号: | CN102270138A | 公开(公告)日: | 2011-12-07 |
发明(设计)人: | 金崇华 | 申请(专利权)人: | 青岛海信传媒网络技术有限公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 北京中博世达专利商标代理有限公司 11274 | 代理人: | 申健 |
地址: | 266071 山东省青*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 实体 对象 创建 方法 装置 | ||
1.一种实体对象的创建方法,其特征在于,包括:
存储描述实体对象的元数据;
在软件系统的运行期,根据模板、元数据和基类生成实体对象的源代码,所述模板表示实体对象源代码的生成策略;
将所述源代码编译成实体对象的字节码;
加载所述实体对象的字节码,并对所述实体对象的字节码中所定义的类实例化,以完成实体对象的创建。
2.根据权利要求1所述实体对象的创建方法,其特征在于,所述在软件系统的运行期,根据模板、元数据和基类生成实体对象的源代码包括:
在软件系统的运行期,根据实体对象的元数据选择对应模板并加载此对应模板;
根据所述对应模板中实体对象源代码的生成策略相应地选择基类,所述基类被实体对象继承以使所述实体对象具有所述基类的属性和方法;
对所述对应模板中的源代码进行解析以生成实体对象的源代码。
3.根据权利要求2所述实体对象的创建方法,其特征在于,所述在软件系统的运行期,根据实体对象的元数据选择对应模板并加载此对应模板包括:
在软件系统的运行期,根据实体对象的元数据,判断所述实体对象所属的类的类型;
根据所述实体对象所属的类的类型选择与此类的类型对应的模板,并加载此对应模板。
4.根据权利要求2所述实体对象的创建方法,其特征在于,所述对所述对应模板中的源代码进行解析以生成实体对象的源代码包括:
对所述对应模板中的源代码进行解析以识别出所述对应模板源代码中的变量和语句;
加载与所述对应模板源代码中的所述变量和语句相关的元数据;
将所述对应模板源代码中的变量替换为与所述变量相关的元数据,并将所述对应模板源代码中的语句替换为与所述语句相关的元数据,替换后生成实体对象的源代码。
5.根据权利要求1所述实体对象的创建方法,其特征在于,所述加载所述实体对象的字节码包括:
根据元数据,采用关联加载策略加载所述实体对象的字节码。
6.根据权利要求5所述实体对象的创建方法,其特征在于,所述根据元数据,采用关联加载策略加载所述实体对象的字节码包括:
根据元数据,对所述实体对象的所有属性进行遍历;
判断所遍历的所有属性的数据类型是否关联其他实体类;
若关联,则加载所述其他实体类直至所述所遍历的所有属性的数据类型都不再关联其他实体类;
加载所述实体对象的字节码。
7.根据权利要求1至6项中任一项所述的所述实体对象的创建方法,其特征在于,所述元数据包括:
类元数据,描述实体对象的基本信息并组织实体对象;
持久化对象属性元数据,表示实体对象持久化方面的特征;
值对象属性元数据,表示实体对象值处理方面的特征;和
关联元数据,描述实体对象与其他实体对象之间的关联关系。
8.根据权利要求7所述的所述实体对象的创建方法,其特征在于,所述元数据进一步包括操作元数据,其描述实体对象提供的操作。
9.根据权利要求1至6项中任一项所述的实体对象的创建方法,其特征在于,所述基类包括普通结构实体类、树形结构实体类和顺序结构实体类。
10.一种实体对象创建装置,其特征在于,包括:
存储单元,用于存储描述实体对象的元数据;
源代码生成单元,用于在软件系统的运行期,根据模板、元数据和基类生成实体对象的源代码,所述模板表示实体对象源代码的生成策略;
编译单元,用于将所述源代码编译成实体对象的字节码;
加载单元,用于加载所述实体对象的字节码,并对所述实体对象的字节码中所定义的类实例化,以完成实体对象的创建。
11.根据权利要求10所述实体对象创建装置,其特征在于,所述源代码生成单元包括:
模板选择和加载模块,用于在软件系统的运行期,根据实体对象的元数据选择对应模板并加载此对应模板;
基类选择模块,用于根据所述对应模板中实体对象源代码的生成策略相应地选择基类,所述基类被实体对象继承以使所述实体对象具有所述基类的属性和方法;
解析模块,用于对所述对应模板中的源代码进行解析以生成实体对象的源代码。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于青岛海信传媒网络技术有限公司,未经青岛海信传媒网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110233116.6/1.html,转载请声明来源钻瓜专利网。