CN103605733A - 基于json数组的页面布局存储方法 - Google Patents
基于json数组的页面布局存储方法 Download PDFInfo
- Publication number
- CN103605733A CN103605733A CN201310582808.0A CN201310582808A CN103605733A CN 103605733 A CN103605733 A CN 103605733A CN 201310582808 A CN201310582808 A CN 201310582808A CN 103605733 A CN103605733 A CN 103605733A
- Authority
- CN
- China
- Prior art keywords
- page layout
- json
- json array
- array
- layout
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 17
- 238000003491 array Methods 0.000 title abstract 5
- 238000013500 data storage Methods 0.000 abstract description 2
- 238000005516 engineering process Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
Abstract
本发明公开了一种基于JSON数组的页面布局存储方法,属于数据存储领域。该存储方法的特点是使用二维JSON数组表示门户页面布局;前台使用JavaScript组装出最终的JSON数组格式字符串,并通过Ajax方式异步提交到后台关系数据库中;后台使用JSONArray解析JSON数组格式的门户页面布局字符串,得到相应的Java对象。与现有技术相比,利用本发明的基于JSON数组的页面布局存储方法既能节省数据库的存储空间,又能提高门户的访问速度,具有很好地推广应用价值。
Description
技术领域
本发明涉及数据存储领域,具体地说是一种基于JSON数组的页面布局存储方法。
背景技术
无论是企业还是政府部门在做信息化建设时,缺乏统一规划、统一IT架构和技术架构、标准化,再加上采用分阶段逐步建设的过程,导致建设的应用系统彼此孤立,标准不一,资源难以共享,不能互联互通,资源重复建设等问题。这种“烟囱”式的管理模式使建设的多应用系统不能够有机的整合,形成“信息孤岛”,造成流程、信息的交换隔阂。
门户作为一个整合资源的应用框架,在企业信息化建设中日益受到重视。它将各种应用系统、数据资源和互联网资源集成到一个信息管理平台之上,并以统一的用户界面提供给用户,使企业可以快速地建立企业对客户、企业对内部员工和企业对企业的信息通道, 使企业能够释放存储在企业内部和外部的各种信息。
随着Web 2.0技术的深入普及,以前基于Portlet规范的“重量级”门户日益显得力不从心,基于Widget规范的“轻量级”门户观念深入人心,带来了一种全新的用户体验。无论门户实现技术怎么变,门户页面的列式布局,作为一种简洁清新、操作方便、高效实用的布局方式,仍是一种广泛采用的主流布局方式。
传统列式布局的存储方式,会分别使用“页面表”、“列表”、“Widget表”来表示门户页面布局,使用“用户页面布局表”表示一个用户与门户页面间的关联关系,一个用户、页面、列、Widget一条记录。假设一个企业有1万员工,每个门户页面有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,则存储格式如下所示:
[
["wID00","wID01","wID02"],
["wID10","wID11","wID12"],
["wID20","wID21","wID22"]
]。
2、 存储格式的前台组织
利用JavaScript的面向对象特性,使用ColPortal代表门户页面,ColPortalColumn代表页面列,ColPortalWidget代表每列里的Widget。ColPortal以及ColPortalColumn中包含toJsonArray方法,当保存页面布局时,调用ColPortal的toJsonArray组装第一维数组,ColPortal的toJsonArray方法依次调用ColPortalColumn的toJsonArray方法组装第二维数组,从而组装出最终的门户页面布局JSON数组,通过Ajax方式异步提交到后台,保存到关系数据库中。
3、 存储格式的后台解析
利用Java的面向对象特性,使用JSONArray代表最终的二维数组,当请求门户布局页面时,根据用户及权限规则,从关系数据库中取出JSON数组格式的字符串,通过JSONArray转换成可操作的Java对象,无需进行数据表间的Join操作,即可快速解析出门户布局页面包含的列数,以及每列包含的Widget。
Claims (4)
1.基于JSON数组的页面布局存储方法,其特征在于:
使用二维JSON数组表示门户页面布局;
前台使用JavaScript组装出最终的JSON数组格式字符串,并通过Ajax方式异步提交到后台关系数据库中;
后台使用JSONArray解析JSON数组格式的门户页面布局字符串,得到相应的Java对象。
2.根据权利要求1所述的基于JSON数组的页面布局存储方法,其特征在于:二维JSON数组中,第一维代表整个门户页面,第二维代表列,数组中每一个元素代表一个Widget的ID。
3.根据权利要求1所述的基于JSON数组的页面布局存储方法,其特征在于:前台使用JavaScript组装出最终的JSON数组格式字符串时,使用ColPortal代表门户页面,ColPortalColumn代表页面列,ColPortalWidget代表每列里的Widget,所述ColPortal以及ColPortalColumn中包含toJsonArray方法,当保存页面布局时,调用ColPortal的toJsonArray组装第一维数组,ColPortal的toJsonArray方法依次调用ColPortalColumn的toJsonArray方法组装第二维数组,从而组装出最终的门户页面布局JSON数组。
4.根据权利要求1所述的基于JSON数组的页面布局存储方法,其特征在于:当请求门户布局页面时,根据用户及权限规则,从关系数据库中取出JSON数组格式的字符串,通过JSONArray转换成可操作的Java对象。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310582808.0A CN103605733A (zh) | 2013-11-20 | 2013-11-20 | 基于json数组的页面布局存储方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310582808.0A CN103605733A (zh) | 2013-11-20 | 2013-11-20 | 基于json数组的页面布局存储方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103605733A true CN103605733A (zh) | 2014-02-26 |
Family
ID=50123955
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310582808.0A Pending CN103605733A (zh) | 2013-11-20 | 2013-11-20 | 基于json数组的页面布局存储方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103605733A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106020794A (zh) * | 2016-05-10 | 2016-10-12 | 浪潮软件股份有限公司 | 一种复杂页面门户页面布局方法 |
CN106886390A (zh) * | 2015-12-15 | 2017-06-23 | 大唐软件技术股份有限公司 | 一种Java对象生成和转换方法和Java对象生成和转换装置 |
CN108037915A (zh) * | 2017-11-07 | 2018-05-15 | 福建天泉教育科技有限公司 | 一种获取json配置文件的方法及终端 |
CN108694041A (zh) * | 2017-03-06 | 2018-10-23 | 武汉斗鱼网络科技有限公司 | 数据转换方法、装置及服务终端 |
CN111414390A (zh) * | 2020-03-20 | 2020-07-14 | 北京思特奇信息技术股份有限公司 | 一种数据处理方法和系统 |
CN111507075A (zh) * | 2019-01-31 | 2020-08-07 | 贵州白山云科技股份有限公司 | 一种进行数据格式转换的方法及装置 |
CN114780094A (zh) * | 2022-06-17 | 2022-07-22 | 苏州万店掌网络科技有限公司 | 一种筛选页面生成方法、装置、设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102467378A (zh) * | 2010-11-11 | 2012-05-23 | 深圳市金蝶友商电子商务服务有限公司 | 基于二维矩阵的html表格处理方法及计算机 |
-
2013
- 2013-11-20 CN CN201310582808.0A patent/CN103605733A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102467378A (zh) * | 2010-11-11 | 2012-05-23 | 深圳市金蝶友商电子商务服务有限公司 | 基于二维矩阵的html表格处理方法及计算机 |
Non-Patent Citations (1)
Title |
---|
黄彪: "Json实现页面多个对象的保存", 《HTTP://HBIAO68.ITEYE.COM/BLOG/1768622》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106886390A (zh) * | 2015-12-15 | 2017-06-23 | 大唐软件技术股份有限公司 | 一种Java对象生成和转换方法和Java对象生成和转换装置 |
CN106020794A (zh) * | 2016-05-10 | 2016-10-12 | 浪潮软件股份有限公司 | 一种复杂页面门户页面布局方法 |
CN108694041A (zh) * | 2017-03-06 | 2018-10-23 | 武汉斗鱼网络科技有限公司 | 数据转换方法、装置及服务终端 |
CN108037915A (zh) * | 2017-11-07 | 2018-05-15 | 福建天泉教育科技有限公司 | 一种获取json配置文件的方法及终端 |
CN111507075A (zh) * | 2019-01-31 | 2020-08-07 | 贵州白山云科技股份有限公司 | 一种进行数据格式转换的方法及装置 |
CN111414390A (zh) * | 2020-03-20 | 2020-07-14 | 北京思特奇信息技术股份有限公司 | 一种数据处理方法和系统 |
CN114780094A (zh) * | 2022-06-17 | 2022-07-22 | 苏州万店掌网络科技有限公司 | 一种筛选页面生成方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103605733A (zh) | 基于json数组的页面布局存储方法 | |
CN108647330B (zh) | 一种基于bim模型文件的3d轻量化转换方法 | |
Wang et al. | Performance prediction for apache spark platform | |
EP3144826B1 (en) | A method and apparatus for representing compound relationships in a graph database | |
Karnitis et al. | Migration of relational database to document-oriented database: Structure denormalization and data transformation | |
WO2021032002A1 (zh) | 基于异构分布式知识图谱的大数据处理方法、设备及介质 | |
JP5298117B2 (ja) | 分散コンピューティングにおけるデータマージング | |
EP3740880A1 (en) | Pick and applicator for use with a stringed instrument | |
US20160103702A1 (en) | Low latency architecture with directory service for integration of transactional data system with analytical data structures | |
Hasani et al. | Lambda architecture for real time big data analytic | |
US9563650B2 (en) | Migrating federated data to multi-source universe database environment | |
CN104361091A (zh) | 一种大数据系统 | |
CN105938479B (zh) | 一种关系表与非关系表的结构转换方法 | |
CN103729453A (zh) | 一种HBase表联合查询优化的方法 | |
CN110674154A (zh) | 一种基于Spark的对Hive中数据进行插入、更新和删除的方法 | |
CN106528898A (zh) | 将非关系型数据库数据转换到关系型数据库的方法及装置 | |
CN104504008B (zh) | 一种基于嵌套的SQL到HBase的数据迁移算法 | |
CN103246727B (zh) | 一种多用户森林资源时空数据库构建的方法 | |
WO2022021710A1 (zh) | 数据转储方法、装置、设备及存储介质 | |
US20140149465A1 (en) | Feature rich view of an entity subgraph | |
CN105630934A (zh) | 一种数据统计方法及系统 | |
CN106020794A (zh) | 一种复杂页面门户页面布局方法 | |
Potey et al. | Database migration from structured database to non-structured database | |
CN106557307A (zh) | 业务数据的处理方法及处理系统 | |
WO2016027451A1 (ja) | データ処理装置、データ処理方法、及び、記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140226 |
|
WD01 | Invention patent application deemed withdrawn after publication |