本发明专利技术公开了一种基于JSON数组的页面布局存储方法,属于数据存储领域。该存储方法的特点是使用二维JSON数组表示门户页面布局;前台使用JavaScript组装出最终的JSON数组格式字符串,并通过Ajax方式异步提交到后台关系数据库中;后台使用JSONArray解析JSON数组格式的门户页面布局字符串,得到相应的Java对象。与现有技术相比,利用本发明专利技术的基于JSON数组的页面布局存储方法既能节省数据库的存储空间,又能提高门户的访问速度,具有很好地推广应用价值。
【技术实现步骤摘要】
基于JSON数组的页面布局存储方法
本专利技术涉及数据存储领域,具体地说是一种基于JSON数组的页面布局存储方法。
技术介绍
无论是企业还是政府部门在做信息化建设时,缺乏统一规划、统一 IT架构和技术架构、标准化,再加上采用分阶段逐步建设的过程,导致建设的应用系统彼此孤立,标准不一,资源难以共享,不能互联互通,资源重复建设等问题。这种“烟?”式的管理模式使建设的多应用系统不能够有机的整合,形成“信息孤岛”,造成流程、信息的交换隔阂。门户作为一个整合资源的应用框架,在企业信息化建设中日益受到重视。它将各种应用系统、数据资源和互联网资源集成到一个信息管理平台之上,并以统一的用户界面提供给用户,使企业可以快速地建立企业对客户、企业对内部员工和企业对企业的信息通道,使企业能够释放存储在企业内部和外部的各种信息。随着Web 2.0技术的深入普及,以前基于Portlet规范的“重量级”门户日益显得力不从心,基于Widget规范的“轻量级”门户观念深入人心,带来了一种全新的用户体验。无论门户实现技术怎么变,门户页面的列式布局,作为一种简洁清新、操作方便、高效实用的布局方式,仍是一种广泛采用的主流布局方式。传统列式布局的存储方式,会分别使用“页面表”、“列表”、“Widget表”来表示门户页面布局,使用“用户页面布局表”表示一个用户与门户页面间的关联关系,一个用户、页面、列、Widget 一条记录。假设一个企业有I万员工,每个门户页面有3列,每列里有4个Widget,后台采用关系数据库存储,则“用户页面布局表”将会有:1万*3*4=12万条记录,如果一个用户有3个门户页面,将会是36万条记录。
技术实现思路
本专利技术的技术任务是针对上述现有技术的不足,提供一种基于JSON数组的页面布局存储方法,利用该方法既能节省数据库的存储空间,又能提高门户的访问速度。本专利技术的技术任务是按以下方式实现的:基于JSON数组的页面布局存储方法,其特点是使用二维JSON数组表示门户页面布局;前台使用JavaScript组装出最终的JSON数组格式字符串,并通过Ajax方式异步提交到后台关系数据库中;后台使用JSONArray解析JSON数组格式的门户页面布局字符串,得到相应的Java对象。二维JSON数组中,优选的,以第一维代表整个门户页面,第二维代表列,数组中每一个元素代表一个Widget的ID。前台使用JavaScript组装出最终的JSON数组格式字符串时,使用ColPortal代表门户页面,ColPortalColumn代表页面列,ColPortalWidget代表每列里的Widget,所述ColPortal以及ColPortalColumn中包含toJsonArray方法,当保存页面布局时,调用ColPortal的toJsonArray组装第一维数组,ColPortal的toJsonArray方法依次调用ColPortalColumn的toJsonArray方法组装第二维数组,从而组装出最终的门户页面布局JSON数组。当请求门户布局页面时,根据用户及权限规则,从关系数据库中取出JSON数组格式的字符串,通过JSONArray转换成可操作的Java对象。本专利技术的基于JSON数组的页面布局存储方法与现有技术相比具有以下突出的有益效果: (一)通过使用JSON数组格式存储门户页面布局,可以形象的反映出门户页面的布局方式,便于直观的识别出页面上的列数以及每列包含的Widget ; (二)通过使用JSON数组格式存储门户页面布局,保存门户页面布局时,极大的减少了关系数据库的存储记录条数,一定程度上压缩了存储空间; (三)通过使用JSON数组格式存储门户页面布局,访问门户页面布局时,避免了数据库多个表间进行Join操作,有效的提升了访问速度。【附图说明】附图1是基于JSON数组的页面布局存储方法的结构框图。【具体实施方式】参照说明书附图以具体实施例对本专利技术的基于JSON数组的页面布局存储方法作以下详细地说明。实施例: 本专利技术的基于JSON数组的页面布局存储方法,主要涉及以下方面: 1、存储格式 采用二维数组作为最终存储格式,第一维代表整个门户页面,第二维代表列,数组中每一个元素代表一个Widget的ID。假如一个列式布局页面中有3列,每列中有3个Widget,则存储格式如下所示:[[wIDOO, wIDOl, wID02],[wIDIO,wIDll, wID12],[wID20, wID21, wID22] ]o2、存储格式的前台组织 利用JavaScript的面向对象特性,使用ColPortal代表门户页面,ColPortalColumn代表页面列,ColPortalWidget 代表每列里的 Widget。ColPortal 以及 ColPortalColumn 中包含toJsonArray方法,当保存页面布局时,调用ColPortal的toJsonArray组装第一维数组,ColPortal 的 toJsonArray 方法依次调用 ColPortalColumn 的 toJsonArray 方法组装第二维数组,从而组装出最终的门户页面布局JSON数组,通过Ajax方式异步提交到后台,保存到关系数据库中。3、存储格式的后台解析 利用Java的面向对象特性,使用JSONArray代表最终的二维数组,当请求门户布局页面时,根据用户及权限规则,从关系数据库中取出JSON数组格式的字符串,通过JSONArray转换成可操作的Java对象,无需进行数据表间的Join操作,即可快速解析出门户布局页面包含的列数,以及每列包含的Widget。本文档来自技高网...
【技术保护点】
基于JSON数组的页面布局存储方法,其特征在于:使用二维JSON数组表示门户页面布局;前台使用JavaScript组装出最终的JSON数组格式字符串,并通过Ajax方式异步提交到后台关系数据库中;后台使用JSONArray解析JSON数组格式的门户页面布局字符串,得到相应的Java对象。
【技术特征摘要】
1.基于JSON数组的页面布局存储方法,其特征在于: 使用二维JSON数组表示门户页面布局; 前台使用JavaScript组装出最终的JSON数组格式字符串,并通过Ajax方式异步提交到后台关系数据库中; 后台使用JSONArray解析JSON数组格式的门户页面布局字符串,得到相应的Java对象。2.根据权利要求1所述的基于JSON数组的页面布局存储方法,其特征在于:二维JSON数组中,第一维代表整个门户页面,第二维代表列,数组中每一个元素代表一个Widget的ID03.根据权利要求1所述的基于JSON数组的页面布局存储方法,其特征在于:前台使用JavaScript组装出最终的JSON数组格式字符串时,使用ColPortal代表门户页面,CoI...
【专利技术属性】
技术研发人员:刘桂海,胡清,
申请(专利权)人:山东浪潮齐鲁软件产业股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。