一种对个人数据库的管理方法及系统与流程

文档序号:19350392发布日期:2019-12-06 21:19阅读:456来源:国知局
一种对个人数据库的管理方法及系统与流程

本发明涉及能源及电力领域,具体涉及一种对个人数据库的管理方法及系统。



背景技术:

个人数据库主要应用于研究机构进行课题研究,目前个人数据库的管理软件层出不穷,但对经济、社会、能源、电力和企业等5个领域的适用性较弱。主要体现在下列方面:第一、目前尚未统一权威机构的数据发布格式,导致同一领域的不同机构或不同领域之间发布的数据格式存在较大差异,例如:在能源领域方面,美国的国际能源署(iea)、彭博、美国能源信息署(eia)等各机构发表数据的格式都存在差异。当研究结构需要将权威机构发布的数据进行整理存储到个人数据库用于研究时,若使用通用的接口上传数据表格,则需要调整表格格式,该过程存在繁杂及重复工作量,耗费精力;若针对各个机构发布的数据格式进行接口开发,则由于数据格式更新或网站结构变动,导致开发的工作量大且维护成本较高。第二、研究过程中用到的数据,并不是都从世界银行、国际能源署、国家统计局等权威机构发布的指标数据中获取,还有部分数据来自于其他机构的研究成果,研究的过程中需要将所有的数据存储到个人数据库中。第三、研究过程中用到的数据,除了从权威机构中直接获取指标数据外还有部分数据需要对公共数据库中的某几个指标数据进行计算得到,如研究中需要用到“各类能源发电结构占比”数据,而世界银行、国际能源署、国家统计局等权威机构发布的指标数据中仅有各类能源发电量和总发电量,需要通过处理得到“各类能源发电结构占比”数据,而处理后的数据仅用于个人或部门的研究,需要存储在个人数据库中。第四、研究机构可以将研究结果从个人数据库中推送至公共数据库,供其他研究机构进行参考。

综上,现有的个人数据库管理软件无法满足能源领域研究的个性化需要;同时在个人数据库与公用数据库的交互方面不够灵活,在研究人员对数据的个性化应用方面存在短板。



技术实现要素:

为了解决现有技术中所存在的上述不足,本发明提供一种对个人数据库的管理方法,包括:

基于用户界面的设置为个人数据库设定属性;

基于所述个人数据库属性将待上传的数据通过预先设定的上传接口上传至个人数据库,并对个人数据库中的数据进行处理,获得处理结果;

基于权限管理,将所述处理结果保存至公用数据库。

优选的,所述个人数据库属性,包括:

指标、时间、国家、单位、数据值、上传者和共享权限。

优选的,所述基于所述个人数据库属性将待上传的数据通过预先设定的上传接口上传至个人数据库,包括:

基于个人数据库属性在用户界面上配置表格格式;

对待上传的数据进行解析,写入用户界面对应的表格中;

使用poi工具提取表格中每个属性对应位置的数据,封装为数据对象;

通过hibernate将所述数据对象存储至个人数据库中;

其中,所述待上传的数据为excel表格数据。

优选的,所述权限管理,包括:

数据的上传者在个人数据库属性的共享权限中增加被共享人。

优选的,所述数据的上传者在个人数据库属性的共享权限中增加被共享人,包括:

在进行数据展示时,当用户账号与共享权限中的用户账号匹配则将所述数据进行展示,被共享人对展示数据进行查阅、导出操作。

优选的,对个人数据库中的数据进行处理,包括:

在公用数据库中选定需要推送数据的指标,并在个人数据库中选定被推送的一个或多个指标;

根据推送指标与被推送指标之间的关系和/或单位换算关系设置计算公式;

提取被推送数据指标的各个属性,基于所述计算公式对各属性对应的数据值进行计算,得到处理结果;

将所述处理结果封装为公用数据库的数据对象。

基于同一发明构思,本发明还提供了一种对个人数据库的管理系统,包括:

界面层、交互层和逻辑层;

所述界面层,用于基于用户界面的设置为个人数据库设定属性;

所述交互层,用于接收所述界面层发送的个人数据库属性、待上传的数据和设置权限管理并分发到不同展现组件,由展现组件组织所述逻辑层来协同处理所述个人数据库属性、待上传的数据和设置权限管理;

所述逻辑层,用于基于所述个人数据库属性将待上传的数据通过预先设定的上传接口上传至个人数据库,并对个人数据库中的数据进行处理,获得处理结果,以及基于权限管理,将所述处理结果保存至公用数据库。

优选的,所述系统还包括:持久层;

所述持久层,用于为个人数据库将处理结果保存至公共数据库提供接口。

优选的,所述逻辑层,包括:

配置单元,用于基于个人数据库属性在用户界面上配置表格格式;

解析单元,用于对待上传的数据进行解析,写入用户界面对应的表格中;

提取单元,用于使用poi工具提取表格中每个属性对应位置的数据,封装为数据对象;

存储单元,用于通过hibernate将所述数据对象存储至个人数据库中;

其中,所述待上传的数据为excel表格数据。

优选的,所述持久层集成hibernate,用于支持不同数据库连接方式以及不同数据库访问。

与现有技术相比,本发明的有益效果为:

本发明提供的技术方案,基于用户界面的设置为个人数据库设定属性;基于所述个人数据库属性将待上传的数据通过预先设定的上传接口上传至个人数据库,并对个人数据库中的数据进行处理,获得处理结果;基于权限管理,将所述处理结果保存至公用数据库,提升了个人数据管理的专业性和灵活性,用户可根据自身研究需要,设定个人数据库属性,将待上传的数据通过预先设定的上传接口上传至个人数据库,同时能够与公共数据库进行交互,满足个人研究成果的共享需要。

本发明提供的技术方案,提供了定制化数据上传接口,根据用户设置的表格格式,可以实现将同一领域的不同机构或不同领域之间发布的数据存储到个人数据库中,缩短了调整数据格式的时间,提高了工作效率。

本发明提供的技术方案,研究机构将研究过程中需要的数据从权威机构和其他研究机构中进行获取并存储在个人数据库中。

本发明提供的技术方案,研究机构可以将研究结果从个人数据库中推送至公共数据库,供其他研究机构进行参考。

附图说明

图1为本发明一种对个人数据库的管理方法流程图;

图2为本发明实施例中的模板格式示意图;

图3为本发明的一种对个人数据库的管理系统结构图。

具体实施方式

为了更好地理解本发明,下面结合说明书附图和实例对本发明的内容做进一步的说明。

实施例1

如图1所示,本发明提供的一种对个人数据库的管理方法,包括:

步骤s1、基于用户界面的设置为个人数据库设定属性;

步骤s2、基于所述个人数据库属性将待上传的数据通过预先设定的上传接口上传至个人数据库,并对个人数据库中的数据进行处理,获得处理结果;

步骤s3、基于权限管理,将所述处理结果保存至公用数据库。

本发明提供的发明构思,实现了用户对个人数据库的管理,对个人常用的数据进行线上管理,并实现与其他用户的共享。

本发明提供的步骤s1、基于用户界面的设置为个人数据库设定属性,包括:

设定个人数据库属性。由于个人数据库需与公用数据库进行交互,因此个人数据库应涵盖公用数据库的属性,包括指标、时间、国家、单位、数据值等;另外,个人数据库由个人上传数据及实现共享,因此个人数据库包含上传者、共享权限相关属性。

步骤s2、基于所述个人数据库属性将待上传的数据通过预先设定的上传接口上传至个人数据库,并对个人数据库中的数据进行处理,获得处理结果,包括:

首先,基于所述个人数据库属性将待上传的数据通过预先设定的上传接口上传至个人数据库,包括:

开发定制化数据上传接口,实现个人数据上传,具体包括:用户首先在界面中配置好一定的表格格式,程序依据该格式对excel表进行解析,使用poi工具提取对应位置的数据属性,封装为一个数据对象,通过hibernate将数据对象存储至个人数据库中。

本实施例中使用的poi工具为现有的poi导出工具类,属于本领域技术人员从excel中导出数据的常用工具。另外hibernate是一个开放源代码的对象关系映射框架,是常用的技术手段,用于进行非常轻量级的对象封装,将数据对象存储至数据库中。

然后,基于公用数据与个人数据的指标关系,设置对应的计算公式,对个人数据库中的数据进行处理,获得处理结果,包括:

将个人数据推送至公用数据库,具体包括:先在公用数据库中选定需要推送数据的指标,再选定个人数据库中被推送的一个或多个指标,根据指标之间的关系及单位换算关系设置计算公式,提取选择的个人数据的各个属性,包括指标、数据值、单位、时间、国家,按照设定的计算公式对数据值进行计算,得到处理结果,将处理结果封装为公用数据库的数据对象。

步骤s3、基于权限管理,将所述处理结果保存至公用数据库,包括:

数据的上传者拥有最高权限,可选择其他用户进行共享,数据库的共享权限字段中增加被共享人。数据展示时,当用户账号与共享权限字段中的用户账号匹配则将该数据进行展示,被共享的用户才可查阅、导出该数据。

数据的上传者将处理结果保存至公用数据库中,实现了个人数据的共享。

实施例2

本实施例以用户从其他部门获取到“化石能源装机容量占比”指标数据为例,用本发明提供的个人数据库管理方法进行管理,包括:

当用户从其他部门获取到“化石能源装机容量占比”指标数据的excel表格后,按照该表格的格式在系统中设定导入模板的格式,如表格中第一行是时间,第一列是国家,a1单元格是数据的单位,则模板的格式同样为第一行是时间,第一列是国家,a1单元格是数据的单位,数据值的开始行为2,开始列为2,再将sheet页的名字更改为指标名称“化石能源装机容量占比”,使用该模板上传该表格后,如图2所示,程序按照第一行是时间,第一列是国家,a1单元格是数据的单位,数据值的开始行为2,开始列为2对表格进行解析,将每个数据进行封装:时间、国家、单位、指标、数据值,存储至个人数据库。

若需共享给其他用户,则可在共享人界面选择对应的用户,数据库中的共享权限字段即可将该用户进行记录,该用户就可查询到“化石能源装机容量占比”的数据。

若需推送至公共数据库,选择“化石能源装机容量占比”指标数据和5e中的“电力-装机容量-化石能源装机容量占比”,设定计算公式:指标数据1=指标数据2,程序会先提取个人数据库中数据的国家、时间等各个属性,根据计算公式算出结果后,按照公共数据库的属性进行重新封装,存储至公共数据库。

实施例3

基于同一发明构思,本发明还提供了一种对个人数据库的管理系统,包括:

界面层、交互层和逻辑层;

所述界面层,用于基于用户界面的设置为个人数据库设定属性;

所述交互层,用于接收所述界面层发送的个人数据库属性、待上传的数据和设置权限管理并分发到不同展现组件,由展现组件组织所述逻辑层来协同处理所述个人数据库属性、待上传的数据和设置权限管理;

所述逻辑层,用于基于所述个人数据库属性将待上传的数据通过预先设定的上传接口上传至个人数据库,并对个人数据库中的数据进行处理,获得处理结果,以及基于权限管理,将所述处理结果保存至公用数据库。

实施例中,所述系统还包括:持久层;

所述持久层,用于为个人数据库将处理结果保存至公共数据库提供接口。

实施例中,所述逻辑层,包括:

配置单元,用于基于个人数据库属性在用户界面上配置表格格式;

解析单元,用于对待上传的数据进行解析,写入用户界面对应的表格中;

提取单元,用于使用poi工具提取表格中每个属性对应位置的数据,封装为数据对象;

存储单元,用于通过hibernate将所述数据对象存储至个人数据库中;

其中,所述待上传的数据为excel表格数据。

实施例中,所述持久层集成hibernate,用于支持不同数据库连接方式以及不同数据库访问。

本实施例提供的系统采用sg-uap开发平台进行开发,核心框架是统一应用开发平台的基础开发框架,为平台公共套件、业务应用系统的开发提供统一的基础设施,屏蔽底层的技术实现,简化具体功能的开发过程。如图3所示,核心框架为应用系统提供了分层体系结构,分别是界面层、交互层、逻辑层和持久层。

界面层:即数据的展示界面和用户的操作界面,基于ajax框架自主开发可复用的界面标签,可以灵活组合满足不同客户的需求。该层包含了用户设定表格格式、权限设置、选择推送指标、设置计算公式等操作。

交互层:响应用户请求并将请求分发到不同展现组件,由展现组件组织逻辑层来协同处理这些请求,返回结果到界面层。

逻辑层:提供通用组件,对通用业务逻辑、工具包以及公共套件提供的服务进行封装,以便业务逻辑的复用和组装;接收用户请求,并使用对应的逻辑方法进行处理,生成相关的响应结果。包括个人数据库属性的设定、excel表格的解析、数据对象的封装、数据的计算等操作。

持久层:为业务系统与数据库的交互提供简单一致的接口,并优化了数据库操作性能。实现通用数据访问服务组件,进行多种形式的数据存取。

核心框架基于spring实现,利用spring容器管理展现构件和逻辑构件的注入。持久层集成hibernate,支持不同数据库连接方式以及不同数据库访问。基础功能包为核心框架提供服务交互、异常、日志、国际化等通用功能,以接口的形式提供。

图3所示的form标签、grid标签、tree标签、page标签均为jps开发中的常用标签;

http/json表示基于http协议收发json数据;

ormapping(objectrelationalmapping,是一种为了解决面向对象与关系型数据库存在的互不匹配的现象的技术)、datamapper(数据映射,即给定两个数据模型,在模型之间建立起数据元素的对应关系)、jdbc(javadatabaseconnectivity,java数据库连接)、dbcp(databaseconnectionpool,数据库连接池)和jndi(javanaminganddirectoryinterface,java命名和目录接口)。

本领域技术人员在进行开发时,先创建uap项目:启动uapstudio,创建一个磁盘目录(例如d:\uapworks\quickstart)用作当前会话的workspace,然后依次完成“创建uap项目”、“配置uap项目”、“创建模块项目”、“配置模块项目”、“验证开发环境”五个步骤。

其次进行界面层创建:使用场景向导建模,通过简单参数配置,快速创建业务应用中典型的场景代码和ui模型(如:表格、级联表格、树表等),基于此进行扩展开发,实现复杂的功能场景。

接着进行交互层开发:根据界面层的请求,将请求分发到不同逻辑层方法中进行处理,此处编写对应的逻辑层处理接口。

然后进行逻辑层开发:实现与交互层中的接口,编写对应的方法,进行逻辑判断、个人数据库的属性设定、excel表格解析、数据对象封装、数据计算以及与持久层交互的接口开发。

最后进行持久层的开发:实现与逻辑层中交互的接口,编写对应的数据存取方法,实现数据的读取与存储。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上仅为本发明的实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均包含在申请待批的本发明的权利要求范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1