【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及计算,尤其涉及数据对象的存储与发送。(2)
技术介绍
串行化可被定义为将对象实例的状态存储到存储介质的过程。在此过程中,对象的公有字段和私有字段以及类名被转换成字节流,随即写到数据流中。当对象随后被反串行化时,可创建原始对象的一个精确复制。考虑活动计算机存储器中的对象,例如具有描述人物的数据的对象。该人物对象有若干子组件成员,例如名字、地址、社会保险号、电话号码、配偶、身高及体重。此人的名字对于一特定应用程序可能是重要的,而身高与体重可能不是。因而,名字可以驻留在活动存储器中,在那里它可被修改,而诸如体重及身高等其它字段被驱出活动存储器来为其它数据腾出空间。最后,该应用程序可能不再需要此人物对象,可将其持久化或发送到另一计算机。要持久化或发送一对象,该对象必须被串行化,这是指以有用的、可检索的方式来格式化对象。在上例中,对象(例如人物对象)的成员对于同一个类的所有对象通常是统一的。例如,每个人物对象有名字、地址、社会保险号、电话号码、配偶、身高与体重。这些信息随着人物不同而变化,且对于某些人来说信息可能是不可用的(“空”),但对于人物类的所有人物对象通常呈现同样的成员字段的存在。由此,人物类可被认为是类属人物对象。人物对象是人物类的一个实例。类及类的实例的这一概念存在于许多编程语言中。无论牵涉到哪种编程语言,串行化通常都是在类的实例上进行的,从而生成串行化的对象。对象可由具有各种类型数据的成员组成。成员可以是原语的或复合的。原语成员的例子有“串”,例如人物对象的名字成员,它是一串字母;及“整数”,例如人物对象的社会保险号,它是一个整数。复合 ...
【技术保护点】
一种作为一数据对象存储在一起的一个或多个数据成员,其特征在于,包含:多个顺序地存储的字节;以及在所述多个顺序地存储的字节中表示的至少一个数据成员,其中,所述至少一个数据成员与一数据类型相关;以及在所述多个顺序地存储的字节中用来标识所述至少一个数据成员的数据类型的至少一个类型字节,其中,所述至少一个类型字节处于充分接近所述至少一个数据成员之处。
【技术特征摘要】
【国外来华专利技术】US 2004-4-9 10/821,6871.一种作为一数据对象存储在一起的一个或多个数据成员,其特征在于,包含多个顺序地存储的字节;以及在所述多个顺序地存储的字节中表示的至少一个数据成员,其中,所述至少一个数据成员与一数据类型相关;以及在所述多个顺序地存储的字节中用来标识所述至少一个数据成员的数据类型的至少一个类型字节,其中,所述至少一个类型字节处于充分接近所述至少一个数据成员之处。2.如权利要求1所述的一个或多个数据成员,其特征在于,所述至少一个数据成员以一种记录格式存储,且其中,所述记录格式定义了所述至少一个数据成员关于所述至少一个类型字节的可预测位置。3.如权利要求所述的一个或多个数据成员,其特征在于,还包含所述多个顺序地存储的字节的至少一个长度字节,用于标识所述至少一个数据成员的长度。4.如权利要求1所述的一个或多个数据成员,其特征在于,所述至少一个数据成员指示与所述数据对象相关的数据的位置,且所述位置与一位置类型相关,且所述多个顺序地存储的字节中至少一个位置字节用来标识所述位置类型。5.如权利要求1所述的一个或多个数据成员,其特征在于,所述至少一个类型字节是所述多个顺序地存储的字节中的第一字节,并指示所述数据对象的开始。6.如权利要求5所述的一个或多个数据成员,其特征在于,所述至少一个类型字节指示数据对象的类型。7.如权利要求1所述的一个或多个数据成员,其特征在于,所述数据类型是从一组中选出的,该组包含除大对象(“LOB”)外的原语数据类型、大对象(“LOB”)数据类型、文件流(“FS”)数据类型及集合元素数据类型。8.如权利要求7所述的一个或多个数据成员,其特征在于,如果所述至少一个数据成员与除LOB外的原语数据类型相关,那么所述至少一个数据成员以记录格式存储,其中,所述记录格式定义了所述至少一个数据成员关于所述至少一个类型字节的可预测位置。9.如权利要求1所述的一个或多个数据成员,其特征在于,所述至少一个类型字节指示所述至少一个数据成员是所述数据对象仅有的一个或几个成员。10.如权利要求1所述的一个或多个数据成员,其特征在于,还包括所述多个顺序地存储的字节中的至少一个集合起始字节,其中,所述至少一个集合起始字节用于指示一系列相关数据成员的开始,所述数据成员存储在充分接近所述至少一个集合起始字节之处。11.如权利要求1所述的一个或多个数据成员,其特征在于,还包括所述多个顺序地存储的字节中的至少一个终止符字节,其中,所述至少一个终止符字节用于指示一系列数据成员的结束。12.如权利要求1所述的一个或多个数据成员,其特征在于,还包括所述多个顺序地存储的字节中的至少一个字节,该字节与作为一数据成员集合的一部分的第一数据成员相关,其中,所述少一个字节提供关于作为所述数据成员集合的一部分的第二数据成员的信息。13.如权利要求1所述的一个或多个数据成员,其特征在于,还包括存储在充分接近所述至少一个数据成员之处的至少一个二叉树(“b树”)号码。14.一种用于存储或发送由至少一个数据成员组成的数据对象的方法,其特征在于,包括在多个顺序地存储的字节内表示至少一个数据成员,其中,所述至少一个数据成员与一数据类型相关;以及将所述多个顺序地存储的字节内的至少一个字节专用于标识所述至少一个数据成员的类型信息,其中,所述至少一个字节位于充分接近所述至少一个数据成员之处。15.如权利要求14所述的方法,其特征在于,标识所述至少一个数据成员是用记录格式来完成的,且所述记录格式定义了所述至少一个数据成员关于所述至少一个类型字节的可测位置。16.如权利要求14所述的方法,其特征在于,还包含了将所述多个顺序地存储的字节中的至少一个字节专用于标识所述至少一个数据成员的长度。17.如权利要求14所述的方法,其特征在于,所述至少一个数据成员指示与所述数据对象相关的数据位置,且所述位置与一...
【专利技术属性】
技术研发人员:FS特瑞克,A卡尔汉,N波内坎蒂,S兰加拉杰,MJ兹威林,
申请(专利权)人:微软公司,
类型:发明
国别省市:US[美国]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。