CN111125220A - 信息自定义导出方法及装置 - Google Patents

信息自定义导出方法及装置 Download PDF

Info

Publication number
CN111125220A
CN111125220A CN201911312620.8A CN201911312620A CN111125220A CN 111125220 A CN111125220 A CN 111125220A CN 201911312620 A CN201911312620 A CN 201911312620A CN 111125220 A CN111125220 A CN 111125220A
Authority
CN
China
Prior art keywords
information
user
export
final
javabean
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.)
Granted
Application number
CN201911312620.8A
Other languages
English (en)
Other versions
CN111125220B (zh
Inventor
王升
陈浪
刘永强
周勇林
沈智杰
景晓军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Surfilter Technology Development Co ltd
Surfilter Network Technology Co ltd
Original Assignee
Shenzhen Surfilter Technology Development Co ltd
Surfilter Network Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Surfilter Technology Development Co ltd, Surfilter Network Technology Co ltd filed Critical Shenzhen Surfilter Technology Development Co ltd
Priority to CN201911312620.8A priority Critical patent/CN111125220B/zh
Publication of CN111125220A publication Critical patent/CN111125220A/zh
Application granted granted Critical
Publication of CN111125220B publication Critical patent/CN111125220B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2433Query languages
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种信息自定义导出方法及装置,该方法包括:获取并提取JavaBean对象中的注解信息;从注解信息中获取待勾选字段信息并返回给前端展示;基于用户的勾选操作,得到属性集合信息;将属性集合信息与JavaBean对象进行映射,得到JavaBean中匹配属性及match字段集合;接收查询条件,基于查询条件以及属性集合信息确定对应的数据总量;当不存在导出超时事件,则对JavaBean中匹配属性集合与mybatis做整合,得到整合信息;接收用户上传的自定义sql查询语句,并查询得到结果值;将结果值与match字段集合做对比匹配,得到最终的信息集合;基于属性集合信息对应的注解信息设置excel表格的格式,并在设置完成后将最终的信息集合导入excel表格中。通过本发明,简化了信息自定义导出流程。

Description

信息自定义导出方法及装置
技术领域
本发明涉及数据处理技术领域,尤其涉及信息自定义导出方法及装置。
背景技术
目前,在固定的导出时,Excel标题头,查询结果返回集合都是一定的,并且需要开发者熟悉Excel的导出功能,开发者可以在代码中直接做完成映射,将所有信息做一一匹配,导出最终的结果值,但在自定义查询中,对于用户的导出需求未知,如果仍将所有信息返回给用户,存在不满足业务需求,再次信息过于冗余的情况,需要过滤用户关心数据,如果按此设计,将会有大量不必要的信息查询,导致数据库查询次数多,压力大,冗余信息处理等,还可能存在数据量过大,查询需要分页,切换数据源,多线程优化,Excel格式,导出超时等一系列问题需要处理。
发明内容
本发明的主要目的在于解决现有技术中存在的上述技术问题。
为实现上述目的,本发明提供一种信息自定义导出方法,所述方法包括:
获取JavaBean对象,并通过反射类提取所述JavaBean对象中的注解信息;
从所述注解信息中获取待勾选字段信息,并将所述待勾选字段信息返回给前端,以供在前端上展示所述待勾选字段信息;
基于用户对所述待勾选字段信息的勾选操作,得到属性集合信息;
将所述属性集合信息与所述JavaBean对象进行映射,得到所述属性集合信息对应的JavaBean中匹配属性及match字段集合;
接收用户上传的查询条件,基于所述查询条件以及所述属性集合信息确定对应的数据总量;
基于所述数据总量判断是否存在导出超时事件;
若不存在导出超时事件,则对所述JavaBean中匹配属性与mybatis做整合,得到整合信息,以供用户基于所述整合信息编写自定义sql查询语句;
接收用户上传的自定义sql查询语句,并根据所述自定义sql查询语句查询得到结果值;
将所述结果值与所述match字段集合做对比匹配,得到最终的信息集合;
基于所述属性集合信息对应的注解信息设置excel表格的格式,并在设置完成后将所述最终的信息集合导入所述excel表格中。
可选的,所述基于所述数据总量判断是否存在导出超时事件包括:
检测所述数据总量是否大于预设导出最大值;
若所述数据总量大于预设导出最大值,则确定存在导出超时事件;
若所述数据总量不大于预设导出最大值,则确定不存在导出超时事件。
可选的,所述在设置完成后将所述最终的信息集合导入所述excel表格中包括:
当所述最终的信息的数据量小于或等于预设阈值时,以单文件导出形式将所述最终的信息集合导入所述excel表格中。
可选的,所述在设置完成后将所述最终的信息集合导入所述excel表格中包括:
当所述最终的信息的数据量大于预设阈值时,将所述最终的信息分为N个文件,并开辟N个线程,所述N小于或等于数据库的连接最大值;
通过所述N个线程将所述N个文件导入所述excel表格中。
此外,为实现上述目的,本发明还提供一种信息自定义导出装置,所述装置包括:
第一获取模块,用于获取JavaBean对象,并通过反射类提取所述JavaBean对象中的注解信息;
反馈模块,用于从所述注解信息中获取待勾选字段信息,并将所述待勾选字段信息返回给前端,以供在前端上展示所述待勾选字段信息;
第二获取模块,用于基于用户对所述待勾选字段信息的勾选操作,得到属性集合信息;
第三获取模块,用于将所述属性集合信息与所述JavaBean对象进行映射,得到所述属性集合信息对应的JavaBean中匹配属性及match字段集合;
数据大小确定模块,用于接收用户上传的查询条件,基于所述查询条件以及所述属性集合信息确定对应的数据总量;
判断模块,用于基于所述数据总量判断是否存在导出超时事件;
整合模块,用于若不存在导出超时事件,则对所述JavaBean中匹配属性与mybatis做整合,得到整合信息,以供用户基于所述整合信息编写自定义sql查询语句;
查询模块,用于接收用户上传的自定义sql查询语句,并根据所述自定义sql查询语句查询得到结果值;
匹配模块,用于将所述结果值与所述match字段集合做对比匹配,得到最终的信息集合;
导出模块,用于基于所述属性集合信息对应的注解信息设置excel表格的格式,并在设置完成后将所述最终的信息集合导入所述excel表格中。
可选的,所述判断模块,用于:
检测所述数据总量是否大于预设导出最大值;
若所述数据总量大于预设导出最大值,则确定存在导出超时事件;
若所述数据总量不大于预设导出最大值,则确定不存在导出超时事件。
可选的,所述导出模块,用于:
当所述最终的信息的数据量小于或等于预设阈值时,以单文件导出形式将所述最终的信息集合导入所述excel表格中。
可选的,所述导出模块,用于:
当所述最终的信息的数据量大于预设阈值时,将所述最终的信息分为N个文件,并开辟N个线程,所述N小于或等于数据库的连接最大值;
通过所述N个线程将所述N个文件导入所述excel表格中。
本发明中,获取JavaBean对象,并通过反射类提取所述JavaBean对象中的注解信息;从所述注解信息中获取待勾选字段信息,并将所述待勾选字段信息返回给前端,以供在前端上展示所述待勾选字段信息;基于用户对所述待勾选字段信息的勾选操作,得到属性集合信息;将所述属性集合信息与所述JavaBean对象进行映射,得到所述属性集合信息对应的JavaBean中匹配属性及match字段集合;接收用户上传的查询条件,基于所述查询条件以及所述属性集合信息确定对应的数据总量;基于所述数据总量判断是否存在导出超时事件;若不存在导出超时事件,则对所述JavaBean中匹配属性与mybatis做整合,得到整合信息,以供用户基于所述整合信息编写自定义sql查询语句;接收用户上传的自定义sql查询语句,并根据所述自定义sql查询语句查询得到结果值;将所述结果值与所述match字段集合做对比匹配,得到最终的信息集合;基于所述属性集合信息对应的注解信息设置excel表格的格式,并在设置完成后将所述最终的信息集合导入所述excel表格中。通过本发明,实现了以下有益效果:
1、简单的注解与导出头对象配置,取代固定化的状态配置;
2、简化开发者对Excel的处理,内部对大批量的数据自动分页查询,sheet转化处理,文件处理压缩等;
3、根据开发者导出头信息按需查询,减少对mysql的查询与最终结果的冗余匹配,减少内存使用与信息转化;
4、简化全部流程,开发者只需要重写适配器中超时规则,导出规则(Excel也可采用默认的规则),重写前端查询字段与查询分页等方法即可,简化全部流程。
附图说明
图1为本发明信息自定义导出方法一实施例的流程示意图;
图2为本发明信息自定义导出装置一实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
参照图1,图1为本发明信息自定义导出方法一实施例的流程示意图。一实施例中,信息自定义导出方法包括:
步骤S10,获取JavaBean对象,并通过反射类提取所述JavaBean对象中的注解信息;
本实施例中,信息自定义导出方法运行在Spring Boot或SpringMvc关联Mybatis数据库管理环境下。其中,Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程;Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面;mybatis是一款优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。其中,JavaBean对象通过编写得到,JavaBean是一种JAVA语言写成的可重用组件。JavaBean对象的属性字段(Java字段信息)为Excel标题头信息,且在属性字段上标注有对应的注解信息。注解信息含导出对象的属性,类信息,标题头名称,导出Excel宽度,导出Excel字体信息等描叙信息。例如Excel导出头信息包含有(姓名,年龄,性别),定义一个注解类,注解类中title为用于展示的待勾选字段信息,des定义为数组,它是具体Excel显示的标题头,例如用户导出经纬度,则需要将title=“经纬度”展示给用户,以供用户勾选该字段,des={“经度”,“纬度”}(在Excel表中分成两个部分显示),match为与结果映射比对的字段,width,font表示这个这个字段占excel的宽度,字体信息。通过反射将JavaBean中的注解信息提取,以供从注解信息中获取title信息,返回给前端。
步骤S20,从所述注解信息中获取待勾选字段信息,并将所述待勾选字段信息返回给前端,以供在前端上展示所述待勾选字段信息;
本实施例中,从步骤S10获取的注解信息中进一步获取待勾选字段信息,例如获取的待勾选字段信息为:姓名、年龄、性别,则将姓名、年龄、性别返回给前端,以供在前端上展示姓名、年龄、性别。
步骤S30,基于用户对所述待勾选字段信息的勾选操作,得到属性集合信息;
本实施例中,基于步骤S20,在前端上展示的待勾选字段信息为姓名、年龄、性别,若基于用户的勾选操作,勾选了姓名、年龄,则将姓名、年龄返回给后台,后台得到的属性集合信息包含姓名和年龄。
步骤S40,将所述属性集合信息与所述JavaBean对象进行映射,得到所述属性集合信息对应JavaBean中匹配属性及match字段集合;
本实施例中,后台将前端上传的属性集合信息与注解类对象(JavaBean对象)进行映射,匹配并获取属性集合信息对应的注解信息,对注解信息进行整理,整理出包含导出属性,导出标题头集合,结果值类与导出属性(match字段)的映射集合,从而得到属性集合信息对应的JavaBean中匹配属性及match字段集合。
步骤S50,接收用户上传的查询条件,基于所述查询条件以及所述属性集合信息确定对应的数据总量;
本实施例中,步骤S30中用户勾选了字段信息,例如姓名、年龄,在本步骤中还可以进一步输入查询条件,例如,设置年龄对应的数值区间,姓名对应的字数等条件。查询条件由用户根据实际需要设置,在此不做限制。本实施例中,接收到用户上传的查询条件后,便可基于查询条件以及属性集合信息确定对应的数据总量。例如,查询条件为:年龄20~30,姓名的字数为两个字,若从数据库中确定满足该查询条件的数据的个数为10000个,则基于查询条件以及属性集合信息确定对应的数据总量为10000。
步骤S60,基于所述数据总量判断是否存在导出超时事件;
本实施例中,由于nginx的HTTP超时机制的存在,当存在超时事件时,会导致数据导出失败,因此,需要基于数据总量判断是否存在导出超时事件。一可选实施例中,步骤S60包括:
检测所述数据总量是否大于预设导出最大值;
若所述数据总量大于预设导出最大值,则确定存在导出超时事件;
若所述数据总量不大于预设导出最大值,则确定不存在导出超时事件。
本实施例中,可根据实际情况预先配置全局导出的最大值,即预设导出最大值。检测数据总量是否大于预设导出最大值,若数据总量大于预设导出最大值,则确定存在导出超时事件,若数据总量不大于预设导出最大值,则确定不存在导出超时事件。
步骤S70,若不存在导出超时事件,则对所述JavaBean中匹配属性与mybatis做整合,得到整合信息,以供用户基于所述整合信息编写自定义sql查询语句;
本实施例中,在不存在导出超时事件时,对JavaBean中匹配属性(例如前面实施例所述的姓名、年龄)与mybatis做整合,得到整合信息。且像用户展示该整合信息,以供用户基于整合信息编写自定义sql查询语句,该sql查询语句仅仅查询用户所需的结果值。
步骤S80,接收用户上传的自定义sql查询语句,并根据所述自定义sql查询语句查询得到结果值;
本实施例中,用户基于整合信息编写完成自定义sql查询语句后,将该自定义sql查询语句上传至后台,后台接收到用户上传的自定义sql查询语句后,根据自定义sql查询语句查询得到结果值。
步骤S90,将所述结果值与所述match字段集合做对比匹配,得到最终的信息集合;
本实施例中,需要进一步对得到的结果值做筛选,即将结果值与match字段集合做对比匹配,得到最终的信息集合。其中,最终的信息集合即需要导出的信息集合。
步骤S100,基于所述属性集合信息对应的注解信息设置excel表格的格式,并在设置完成后将所述最终的信息集合导入所述excel表格中。
本实施例中,如上述实施例所述,注解信息中包含了导出Excel宽度,导出Excel字体信息等信息,因此,根据属性集合信息对应的注解信息设置excel表格的格式,并在设置完成后将最终的信息集合导入excel表格中。而且,可以配置当需要导出的信息集合大于一定值时,将需要导出的信息集合分成多文件导出。
一实施例中,所述在设置完成后将所述最终的信息集合导入所述excel表格中包括:
当所述最终的信息的数据量小于或等于预设阈值时,以单文件导出形式将所述最终的信息集合导入所述excel表格中。
本实施例中,设置一预设阈值,当最终的信息的数据量小于或等于预设阈值时,无需将最终的信息分成多个文件,直接以单文件导出形式将最终的信息集合导入excel表格中。
另一实施例中,所述在设置完成后将所述最终的信息集合导入所述excel表格中包括:
当所述最终的信息的数据量大于预设阈值时,将所述最终的信息分为N个文件,并开辟N个线程,所述N小于或等于数据库的连接最大值;
通过所述N个线程将所述N个文件导入所述excel表格中。
本实施例中,当最终的信息的数据量大于预设阈值时,将最终的信息分为N个文件,并开辟N个线程,且,N小于或等于数据库的连接最大值;通过N个线程将所述N个文件导入所述excel表格中
在处理多文件导出时,根据最终的信息的数据量与每个Excel文件可存储的最大值,将最终的信息分为N个文件。例如,最终的信息的数据量为100m,每个Excel文件可存储的最大值为20,则将最终的信息分为5个文件,并开辟5个线程,通过5个线程将5个文件导入excel表格中。其中,为每个文件开辟单独的线程处理,每个线程单独查询数据库获取数据,开辟的线程不能大于数据库的连接最大值M,若配置超过最大值,则按数据库的连接最大值分配M个线程,先处理M个文件,然后处理剩下的文件。
本发明中,获取JavaBean对象,并通过反射类提取所述JavaBean对象中的注解信息;从所述注解信息中获取待勾选字段信息,并将所述待勾选字段信息返回给前端,以供在前端上展示所述待勾选字段信息;基于用户对所述待勾选字段信息的勾选操作,得到属性集合信息;将所述属性集合信息与所述JavaBean对象进行映射,得到所述属性集合信息对应的JavaBean中匹配属性及match字段集合;接收用户上传的查询条件,基于所述查询条件以及所述属性集合信息确定对应的数据总量;基于所述数据总量判断是否存在导出超时事件;若不存在导出超时事件,则对所述JavaBean中匹配属性与mybatis做整合,得到整合信息,以供用户基于所述整合信息编写自定义sql查询语句;接收用户上传的自定义sql查询语句,并根据所述自定义sql查询语句查询得到结果值;将所述结果值与所述match字段集合做对比匹配,得到最终的信息集合;基于所述属性集合信息对应的注解信息设置excel表格的格式,并在设置完成后将所述最终的信息集合导入所述excel表格中。通过本发明,实现了以下有益效果:
1、简单的注解与导出头对象配置,取代固定化的状态配置;
2、简化开发者对Excel的处理,内部对大批量的数据自动分页查询,sheet转化处理,文件处理压缩等;
3、根据开发者导出头信息按需查询,减少对mysql的查询与最终结果的冗余匹配,减少内存使用与信息转化;
4、简化全部流程,开发者只需要重写适配器中超时规则,导出规则(Excel也可采用默认的规则),重写前端查询字段与查询分页等方法即可,简化全部流程。
参照图2,图2为本发明信息自定义导出装置一实施例的功能模块示意图。在一实施例中,信息自定义导出装置包括:
第一获取模块10,用于获取JavaBean对象,并通过反射类提取所述JavaBean对象中的注解信息;
反馈模块20,用于从所述注解信息中获取待勾选字段信息,并将所述待勾选字段信息返回给前端,以供在前端上展示所述待勾选字段信息;
第二获取模块30,用于基于用户对所述待勾选字段信息的勾选操作,得到属性集合信息;
第三获取模块40,用于将所述属性集合信息与所述JavaBean对象进行映射,得到所述属性集合信息对应的JavaBean中匹配属性及match字段集合;
数据大小确定模块50,用于接收用户上传的查询条件,基于所述查询条件以及所述属性集合信息确定对应的数据总量;
判断模块60,用于基于所述数据总量判断是否存在导出超时事件;
整合模块70,用于若不存在导出超时事件,则对所述JavaBean中匹配属性与mybatis做整合,得到整合信息,以供用户基于所述整合信息编写自定义sql查询语句;
查询模块80,用于接收用户上传的自定义sql查询语句,并根据所述自定义sql查询语句查询得到结果值;
匹配模块90,用于将所述结果值与所述match字段集合做对比匹配,得到最终的信息集合;
导出模块100,用于基于所述属性集合信息对应的注解信息设置excel表格的格式,并在设置完成后将所述最终的信息集合导入所述excel表格中。
进一步地,一实施例中,所述判断模块60,用于:
检测所述数据总量是否大于预设导出最大值;
若所述数据总量大于预设导出最大值,则确定存在导出超时事件;
若所述数据总量不大于预设导出最大值,则确定不存在导出超时事件。
进一步地,一实施例中,所述导出模块100,用于:
当所述最终的信息的数据量小于或等于预设阈值时,以单文件导出形式将所述最终的信息集合导入所述excel表格中。
进一步地,一实施例中,所述导出模块100,用于:
当所述最终的信息的数据量大于预设阈值时,将所述最终的信息分为N个文件,并开辟N个线程,所述N小于或等于数据库的连接最大值;
通过所述N个线程将所述N个文件导入所述excel表格中。
本发明信息自定义导出装置的具体实施例与上述信息自定义导出方法的各个实施例基本相同,在此不做赘述。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

Claims (8)

1.一种信息自定义导出方法,其特征在于,所述方法包括:
获取JavaBean对象,并通过反射类提取所述JavaBean对象中的注解信息;
从所述注解信息中获取待勾选字段信息,并将所述待勾选字段信息返回给前端,以供在前端上展示所述待勾选字段信息;
基于用户对所述待勾选字段信息的勾选操作,得到属性集合信息;
将所述属性集合信息与所述JavaBean对象进行映射,得到所述属性集合信息对应的JavaBean中匹配属性及match字段集合;
接收用户上传的查询条件,基于所述查询条件以及所述属性集合信息确定对应的数据总量;
基于所述数据总量判断是否存在导出超时事件;
若不存在导出超时事件,则对所述JavaBean中匹配属性与mybatis做整合,得到整合信息,以供用户基于所述整合信息编写自定义sql查询语句;
接收用户上传的自定义sql查询语句,并根据所述自定义sql查询语句查询得到结果值;
将所述结果值与所述match字段集合做对比匹配,得到最终的信息集合;
基于所述属性集合信息对应的注解信息设置excel表格的格式,并在设置完成后将所述最终的信息集合导入所述excel表格中。
2.如权利要求1所述的方法,其特征在于,所述基于所述数据总量判断是否存在导出超时事件包括:
检测所述数据总量是否大于预设导出最大值;
若所述数据总量大于预设导出最大值,则确定存在导出超时事件;
若所述数据总量不大于预设导出最大值,则确定不存在导出超时事件。
3.如权利要求1所述的方法,其特征在于,所述在设置完成后将所述最终的信息集合导入所述excel表格中包括:
当所述最终的信息的数据量小于或等于预设阈值时,以单文件导出形式将所述最终的信息集合导入所述excel表格中。
4.如权利要求3所述的方法,其特征在于,所述在设置完成后将所述最终的信息集合导入所述excel表格中包括:
当所述最终的信息的数据量大于预设阈值时,将所述最终的信息分为N个文件,并开辟N个线程,所述N小于或等于数据库的连接最大值;
通过所述N个线程将所述N个文件导入所述excel表格中。
5.一种信息自定义导出装置,其特征在于,所述装置包括:
第一获取模块,用于获取JavaBean对象,并通过反射类提取所述JavaBean对象中的注解信息;
反馈模块,用于从所述注解信息中获取待勾选字段信息,并将所述待勾选字段信息返回给前端,以供在前端上展示所述待勾选字段信息;
第二获取模块,用于基于用户对所述待勾选字段信息的勾选操作,得到属性集合信息;
第三获取模块,用于将所述属性集合信息与所述JavaBean对象进行映射,得到所述属性集合信息对应的JavaBean中匹配属性及match字段集合;
数据大小确定模块,用于接收用户上传的查询条件,基于所述查询条件以及所述属性集合信息确定对应的数据总量;
判断模块,用于基于所述数据总量判断是否存在导出超时事件;
整合模块,用于若不存在导出超时事件,则对所述JavaBean中匹配属性与mybatis做整合,得到整合信息,以供用户基于所述整合信息编写自定义sql查询语句;
查询模块,用于接收用户上传的自定义sql查询语句,并根据所述自定义sql查询语句查询得到结果值;
匹配模块,用于将所述结果值与所述match字段集合做对比匹配,得到最终的信息集合;
导出模块,用于基于所述属性集合信息对应的注解信息设置excel表格的格式,并在设置完成后将所述最终的信息集合导入所述excel表格中。
6.如权利要求5所述的装置,其特征在于,所述判断模块,用于:
检测所述数据总量是否大于预设导出最大值;
若所述数据总量大于预设导出最大值,则确定存在导出超时事件;
若所述数据总量不大于预设导出最大值,则确定不存在导出超时事件。
7.如权利要求5所述的装置,其特征在于,所述导出模块,用于:
当所述最终的信息的数据量小于或等于预设阈值时,以单文件导出形式将所述最终的信息集合导入所述excel表格中。
8.如权利要求7所述的装置,其特征在于,所述导出模块,用于:
当所述最终的信息的数据量大于预设阈值时,将所述最终的信息分为N个文件,并开辟N个线程,所述N小于或等于数据库的连接最大值;
通过所述N个线程将所述N个文件导入所述excel表格中。
CN201911312620.8A 2019-12-18 2019-12-18 信息自定义导出方法及装置 Active CN111125220B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911312620.8A CN111125220B (zh) 2019-12-18 2019-12-18 信息自定义导出方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911312620.8A CN111125220B (zh) 2019-12-18 2019-12-18 信息自定义导出方法及装置

Publications (2)

Publication Number Publication Date
CN111125220A true CN111125220A (zh) 2020-05-08
CN111125220B CN111125220B (zh) 2023-04-11

Family

ID=70499712

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911312620.8A Active CN111125220B (zh) 2019-12-18 2019-12-18 信息自定义导出方法及装置

Country Status (1)

Country Link
CN (1) CN111125220B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112507067A (zh) * 2020-11-30 2021-03-16 厦门海西医药交易中心有限公司 一种缓存插入式注解器及注解方法
CN113239106A (zh) * 2021-06-04 2021-08-10 平安科技(深圳)有限公司 Excel文件导出方法、装置、电子设备及存储介质
CN113268967A (zh) * 2020-10-13 2021-08-17 上海右云信息技术有限公司 一种用于处理数据信息的方法与设备
CN114969098A (zh) * 2022-06-21 2022-08-30 中银金融科技有限公司 一种数据处理方法、装置、电子设备、及计算机存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100174571A1 (en) * 2009-01-04 2010-07-08 Sandra Lee Jerome Open Dealership Management System developed in MySQL, PHP, HTML, and JavaScript
CN103020064A (zh) * 2011-09-20 2013-04-03 佳都新太科技股份有限公司 一种通过注解方式生成查询条件的方法和配置
US20160275148A1 (en) * 2015-03-20 2016-09-22 Huawei Technologies Co., Ltd. Database query method and device
CN109471890A (zh) * 2018-10-16 2019-03-15 深圳壹账通智能科技有限公司 报表文件的生成方法、终端设备及介质
CN109522370A (zh) * 2018-10-29 2019-03-26 珠海迎迎科技有限公司 一种基于sql的自动表格生成方法及装置
CN109656951A (zh) * 2018-12-18 2019-04-19 北京华电天仁电力控制技术有限公司 基于表达式查询数据的方法及查询系统
CN110147402A (zh) * 2019-05-22 2019-08-20 北大方正集团有限公司 Excel文件导入方法及设备、导出方法及设备
CN110309217A (zh) * 2019-05-30 2019-10-08 平安科技(深圳)有限公司 数据的导入导出方法、装置、终端及计算机可读存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100174571A1 (en) * 2009-01-04 2010-07-08 Sandra Lee Jerome Open Dealership Management System developed in MySQL, PHP, HTML, and JavaScript
CN103020064A (zh) * 2011-09-20 2013-04-03 佳都新太科技股份有限公司 一种通过注解方式生成查询条件的方法和配置
US20160275148A1 (en) * 2015-03-20 2016-09-22 Huawei Technologies Co., Ltd. Database query method and device
CN109471890A (zh) * 2018-10-16 2019-03-15 深圳壹账通智能科技有限公司 报表文件的生成方法、终端设备及介质
CN109522370A (zh) * 2018-10-29 2019-03-26 珠海迎迎科技有限公司 一种基于sql的自动表格生成方法及装置
CN109656951A (zh) * 2018-12-18 2019-04-19 北京华电天仁电力控制技术有限公司 基于表达式查询数据的方法及查询系统
CN110147402A (zh) * 2019-05-22 2019-08-20 北大方正集团有限公司 Excel文件导入方法及设备、导出方法及设备
CN110309217A (zh) * 2019-05-30 2019-10-08 平安科技(深圳)有限公司 数据的导入导出方法、装置、终端及计算机可读存储介质

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113268967A (zh) * 2020-10-13 2021-08-17 上海右云信息技术有限公司 一种用于处理数据信息的方法与设备
CN113268967B (zh) * 2020-10-13 2024-04-09 上海右云信息技术有限公司 一种用于处理数据信息的方法与设备
CN112507067A (zh) * 2020-11-30 2021-03-16 厦门海西医药交易中心有限公司 一种缓存插入式注解器及注解方法
CN112507067B (zh) * 2020-11-30 2022-08-23 厦门海西医药交易中心有限公司 一种缓存插入式注解器及注解方法
CN113239106A (zh) * 2021-06-04 2021-08-10 平安科技(深圳)有限公司 Excel文件导出方法、装置、电子设备及存储介质
CN113239106B (zh) * 2021-06-04 2023-12-19 平安科技(深圳)有限公司 Excel文件导出方法、装置、电子设备及存储介质
CN114969098A (zh) * 2022-06-21 2022-08-30 中银金融科技有限公司 一种数据处理方法、装置、电子设备、及计算机存储介质

Also Published As

Publication number Publication date
CN111125220B (zh) 2023-04-11

Similar Documents

Publication Publication Date Title
CN111125220B (zh) 信息自定义导出方法及装置
CN102799634B (zh) 数据存储方法及装置
EP2909750B1 (en) Specifying and applying rules to data
CN101739390B (zh) 基于技术设计文档的数据转换
CN110162544B (zh) 异构数据源数据获取方法及装置
US9910870B2 (en) System and method for creating data models from complex raw log files
CN111104421A (zh) 一种基于数据接口标准配置的数据查询方法及装置
CN111459982A (zh) 一种数据查询方法、装置、终端设备及存储介质
CN110765750B (zh) 报表数据录入方法及终端设备
CN110688544A (zh) 一种查询数据库的方法、设备及存储介质
CN108241720B (zh) 数据处理方法、装置和计算机可读存储介质
CN109271315B (zh) 脚本代码检测方法、装置、计算机设备及存储介质
CN106294128B (zh) 一种导出报表数据的自动化测试方法及装置
CN111048215A (zh) 一种基于crm的医疗视频制作方法及系统
CN114090671A (zh) 数据导入方法、装置、电子设备及存储介质
CN111061733B (zh) 数据处理方法、装置、电子设备和计算机可读存储介质
CN110750434A (zh) 接口测试方法、装置、电子设备和计算机可读存储介质
CN110969000B (zh) 数据合并的处理方法及装置
CN107368500A (zh) 数据抽取方法及系统
CN112162982A (zh) 数据查询方法、装置、设备及介质
CN115630106B (zh) 一种基于通用格式解析的多场景参数接收方法及装置
CN112052254B (zh) 数据封装方法、电子设备及存储介质
CN114500334B (zh) 服务端应用架构的诊断方法及装置
CN107203525B (zh) 数据库的处理方法和装置
US8949167B2 (en) Method and device for the quality analysis of system models

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant