CN116860862B - 低代码平台的前端缓存方法及相关设备 - Google Patents

低代码平台的前端缓存方法及相关设备 Download PDF

Info

Publication number
CN116860862B
CN116860862B CN202311136627.5A CN202311136627A CN116860862B CN 116860862 B CN116860862 B CN 116860862B CN 202311136627 A CN202311136627 A CN 202311136627A CN 116860862 B CN116860862 B CN 116860862B
Authority
CN
China
Prior art keywords
data
cache
editing
viewing
request
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.)
Active
Application number
CN202311136627.5A
Other languages
English (en)
Other versions
CN116860862B8 (zh
CN116860862A (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.)
Beijing Better Cloud Technology Co ltd
Original Assignee
Beijing Better Cloud 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 Beijing Better Cloud Technology Co ltd filed Critical Beijing Better Cloud Technology Co ltd
Priority to CN202311136627.5A priority Critical patent/CN116860862B8/zh
Publication of CN116860862A publication Critical patent/CN116860862A/zh
Application granted granted Critical
Publication of CN116860862B publication Critical patent/CN116860862B/zh
Publication of CN116860862B8 publication Critical patent/CN116860862B8/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
    • 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/245Query processing
    • G06F16/2455Query execution
    • G06F16/24552Database cache management
    • 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/248Presentation of query results
    • 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)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供了低代码平台的前端缓存方法、电子设备、计算机可读存储介质及计算机程序产品。方法包括:获取对表单页面的查看请求,查看请求中包括用于作为查看依据的查看标识;将查看标识与缓存区中的缓存数据进行匹配,得到匹配结果;基于匹配结果,获取与查看请求对应的显示值,并利用表单页面将显示值进行展示;其中,缓存数据的获取方式包括:监控对表单页面的编辑操作,以获取编辑数据;根据预设缓存规则,利用编辑数据对缓存区中的存储值进行更新,以得到缓存数据。本申请依托低代码平台的模型能力和表单配置化能力,实现了高效的数据查询过程,进而提升了低代码平台下的数据查询性能。

Description

低代码平台的前端缓存方法及相关设备
技术领域
本申请涉及低代码平台的技术领域,尤其涉及低代码平台的前端缓存方法、电子设备、计算机可读存储介质及计算机程序产品。
背景技术
传统开发模式形成了一套复杂的***,需要专业的IT技术人员按照流程及任务分工进行开发应用。而低代码应用开发***,可以让用户在没有专业的IT技术人员的帮助下,自主地搭建业务应用。
当前低代码开发侧重专注于如何让用户能够简单进行业务开发,开发完直接发布使用即可。但是在开发后的软件应用中,在页面进行加载、显示、交互时接口会出现重复调用,导致数据查询过程低效。
因此,亟需提供一种低代码平台的前端缓存方法、电子设备、计算机可读存储介质及计算机程序产品,以改进现有技术存在的问题。
发明内容
本申请的目的在于提供低代码平台的前端缓存方法、电子设备、计算机可读存储介质及计算机程序产品,解决基于低代码平台的数据查询的过程低效的技术问题。
本申请的目的采用以下技术方案实现:
第一方面,本申请提供了一种低代码平台的前端缓存方法,所述方法包括:
获取对表单页面的查看请求,所述查看请求中包括用于作为查看依据的查看标识;
将所述查看标识与缓存区中的缓存数据进行匹配,得到匹配结果;
基于所述匹配结果,获取与所述查看请求对应的显示值,并利用所述表单页面将所述显示值进行展示;
其中,所述缓存数据的获取方式包括:
监控对所述表单页面的编辑操作,以获取编辑数据;
根据预设缓存规则,利用所述编辑数据对所述缓存区中的存储值进行更新,以得到所述缓存数据。
该技术方案的有益效果在于:当用户发起对表单页面的查看请求时,获取该请求中的查看标识,该标识用作查看依据。将查看标识与缓存区中的缓存数据进行匹配,以确定是否存在与查看请求相关联的缓存数据。匹配结果可以是匹配成功和匹配不成功,根据匹配结果判断是否存在匹配成功的缓存数据。如果存在匹配成功的缓存数据,则继续下一步;如果匹配失败,可以通过其他方式获取相关数据。基于匹配结果,从缓存数据中获取与查看请求对应的显示值,用于在表单页面上展示给用户,以满足用户对表单页面的查看需求。同时,将用户对表单页面的编辑操作进行监控,以捕获编辑过程中产生的数据变化。例如,当用户修改表单字段的值时会捕获并记录这些编辑数据。根据预设的缓存规则,将编辑数据与缓存区中的存储值进行比较和匹配。如果发现存储值与编辑数据不一致或存储值已过期,可以根据编辑数据更新缓存区中对应的存储值,以确保缓存数据的准确性和实时性。
一方面,通过缓存的方式减少了表单页面的查看请求对后端服务器的频繁请求,从而加快页面的加载速度,提升用户的体验。另一方面,通过缓存数据的调用避免了重复请求相同的数据,减少了接口请求的次数,降低了对后端服务器的负载压力。又一方面,通过缓存区的设置,可以实现对缓存区的缓存数据的共享,通过对缓存区的缓存数据的共享不同组件或页面之间可以获取相同的数据,提高了数据的复用性和效率。又一方面,由于数据已缓存在前端,提供了一定程度的离线浏览能力。同时通过在前端进行数据缓存和展示,减少了对后端服务器的请求,降低了后端的负载压力,提高了页面查看时的整体性能和稳定性。又一方面,上述对缓存数据的获取方式,保持了缓存数据的更新的一致性,确保用户在查看表单页面时获取到最新的数据。
综上所述,上述前端缓存方法通过有效管理和利用缓存数据,提高了页面加载速度、减少了接口请求次数,并实现了数据的共享和离线浏览能力过程效率高,同时也减轻了后端的压力,提升了查看时的用户体验。同时,对编辑数据的监控和利用编辑数据更新缓存数据,以及时更新缓存数据,保持数据的准确性和实时性,从而提供更好的用户体验和数据展示效果。
在一些可能的实现方式中,所述基于所述匹配结果,获取与所述查看请求对应的显示值,包括:
当所述查看标识与所述缓存数据的存储值匹配成功时,将匹配成功的所述存储值作为显示值;
当所述查看标识与缓存区中的缓存数据匹配不成功时,依据所述查看标识对所述表单页面的后端服务器的数据源进行检索,以获取与所述查看标识相匹配的存储值并作为显示值。
该技术方案的有益效果在于:首先将查看标识与缓存区中的缓存数据的存储值进行比较,如果匹配成功,将匹配成功的存储值作为显示值。如果查看标识与缓存区中的缓存数据的存储值不匹配,即缓存数据不存在或已过期,可以根据查看标识与表单页面的后端服务器的数据源进行交互,通过查看标识向后端服务器发送请求,请求获取与查看标识相匹配的存储值。后端服务器接收到请求后,根据查看标识从数据库中检索数据,找到与查看标识相匹配的存储值并将获取的存储值作为响应,将获取的存储值作为显示值。
一方面,通过使用前端缓存,可以减少对后端服务器的频繁请求,从而减轻服务器的负载,提高低代码平台的响应速度和整体性能。另一方面,通过缓存存储值并在页面加载时直接获取显示值,可以避免重复的接口请求,加快页面加载速度,提供更快速和流畅的用户体验。又一方面,由于存储值已经缓存在前端,减少了与后端服务器的通信频率,降低了网络开销和数据传输成本,特别是在低带宽或不稳定网络环境下,效果更为显著。
综上所述,分别通过匹配缓存数据和后端数据获取最新的显示值,提高低代码平台的响应速度和整体性能。
在一些可能的实现方式中,当所述查看标识与缓存区中的缓存数据匹配不成功时,所述缓存数据的获取方式还包括:
利用从所述后端服务器的数据源获取的所述存储值,对所述缓存区中的缓存数据进行更新。
该技术方案的有益效果在于:当查看标识与缓存区中的缓存数据不匹配时,向后端服务器发送请求,请求获取与查看标识相匹配的存储值。根据查看标识从数据库或其他数据源中检索数据,找到与查看标识相匹配的存储值。后端服务器将获取的存储值作为响应返回给前端***。前端***接收到后端服务器的响应后,利用获取的存储值对缓存区中的缓存数据进行更新。
一方面,通过从后端服务器获取最新的存储值并更新缓存数据,保证了缓存数据与后端数据的一致性,可以避免因为缓存数据过期或不准确而导致的数据不一致问题。另一方面,由于存储值对缓冲数据的更新并不影响用户的查看请求进度,用户无需等待数据更新完成即可立即获得最新的显示值,有助于提高用户的交互体验和页面加载速度。
综上所述,通过从后端服务器获取存储值并更新缓存数据,保证了数据的一致性,提高了数据更新效率,减少了用户等待时间和网络传输成本。
在一些可能的实现方式中,所述查看请求还包括密匙信息,所述密匙信息用于对加密后的编辑数据进行身份验证;所述缓存区包括多个缓存容器,每个所述缓存容器分别用于存储和管理不同的缓存数据,所述预设缓存规则包括:
判断所述编辑数据的数据类型,所述数据类型包括业务级数据和会话级数据;
当所述编辑数据的数据类型是业务级数据时,获取编辑数据和缓存容器之间的对应关系;
根据所述对应关系,将所述编辑数据存储到所述编辑数据对应的缓存容器中;
当所述编辑数据的数据类型是会话级数据时,利用加密算法对所述编辑数据进行加密;
根据编辑数据和缓存容器之间的对应关系,将加密后的所述编辑数据存储到所述编辑数据对应的缓存容器中。
该技术方案的有益效果在于:查看请求包括查看标识和密钥信息,通过查看标识可以确定需要查看的数据,并通过密钥信息对加密后的数据进行身份验证和访问控制。当编辑数据的数据类型是业务级数据时,根据预设缓存规则,获取编辑数据和缓存容器之间的对应关系,将编辑数据存储到对应的缓存容器中,以更新缓存数据,便于后续的查看请求可以从缓存中获取最新的数据。当编辑数据的数据类型是会话级数据时,利用加密算法对编辑数据进行加密,加密后的数据可以保护会话级数据的隐私和安全。根据编辑数据和缓存容器之间的对应关系,将加密后的编辑数据存储到对应的缓存容器中,可以更新缓存数据的同时确保会话级数据的机密性。
一方面,对于会话级数据,通过加密算法对编辑数据进行加密,可以保护数据的隐私和安全性。只有具有合法访问权限的用户能够解密和查看数据,增强了数据的保密性。另一方面,通过更新缓存数据,可以确保用户在不同页面上查看和编辑的数据保持一致。当数据发生变化时,及时更新缓存可以避免数据的不一致性问题。
综上所述,通过使用缓存和加密机制,可以提高数据访问效率、减少网络开销,提升用户体验,并确保数据的保密性和一致性。这有助于提升低代码平台的性能和安全性,提供更好的用户体验和数据保护机制。
在一些可能的实现方式中,在所述判断所述编辑数据的数据类型之前,所述预设缓存规则还包括:通过所述密匙信息进行用户验证,以获取所述用户的角色权限;
所述判断所述编辑数据的数据类型包括:
将所述角色权限对应的数据作为编辑数据并用于判断,以确定所述编辑数据的数据类型。
该技术方案的有益效果在于:当用户进行操作时,通过密匙信息进行用户验证,获取用户的角色权限,根据用户的角色权限设定不同的缓存数据获取策略(即缓存规则)。可以认为,对于普通用户可以监控全部数据变化,并将其存储到相应的缓存容器中。而对于管理员用户(相比普通用户的角色权限更高,数据安全要求也更高),监控部分数据变化并存储到适当的缓存容器中。在判断编辑数据的数据类型时,将用户角色权限对应的数据作为编辑数据,并用于判断数据类型。这样可以根据不同角色权限的用户,确定如何处理和缓存数据。
由此,不同角色的用户可以享有个性化的缓存数据获取策略,根据其角色需求进行数据缓存和更新,提高缓存方法的灵活性和效率。本实施例基于用户角色权限的缓存数据获取策略能够提供更加安全、灵活和高效的数据管理方案,满足不同用户角色的需求,并确保数据的安全性和保密性。
在一些可能的实现方式中,所述方法还包括:
获取数据过期策略,并通过所述数据过期策略删除所述缓存区中的过期数据;
其中,所述数据过期策略包括:
分别获取每个缓存数据对应的预设清除周期;
针对所述每个缓存数据,根据其对应的预设清除周期,将所述缓存数据从所述缓存区中删除。
该技术方案的有益效果在于:在前端缓存方法中引入了数据过期策略,用于删除缓存区中的过期数据,以确保缓存数据的及时更新和有效性。获取每个缓存数据对应的预设清除周期,可以认为预设清除周期是指缓存数据在缓存区中存储的时间长度,超过该时间长度后,数据将被认为是过期的。针对每个缓存数据,根据其对应的预设清除周期,判断是否达到了过期时间。如果数据已经过期,将该缓存数据从缓存区中删除。删除过期数据可以释放缓存空间,并确保缓存数据的新鲜性。当下次需要访问该数据时,可以重新从后端服务器获取最新数据并进行缓存,保证数据的及时性和准确性。
一方面,通过删除过期数据,可以确保缓存区中的数据尽可能保持最新状态。过期数据的清理确保了缓存数据的准确性,避免了使用过期数据的情况。另一方面,定期清理过期数据可以释放缓存空间,避免缓存区过度占用存储资源。这对于有限的缓存容量和大量数据的场景下尤为重要,可以提高缓存的利用率。又一方面,通过及时删除过期数据,可以减少缓存区中无效数据的存在,提高缓存访问的效率。缓存区中只保留最新的、有效的数据,可以加快数据的读取和展示速度。又一方面,通过预设清除周期,可以灵活控制不同数据的存储时间。根据业务需求和数据更新频率,对不同的缓存数据可以设置不同的清除周期,使缓存数据的存储时间与数据的有效期相匹配。
综上所述,通过数据过期策略和过期数据的清理,可以保持缓存数据的准确性和新鲜性,节省缓存空间,在降低后端服务器的压力的前提下提高缓存访问效率,这有助于提升低代码平台的性能和资源利用率,提供更好的用户体验和***可靠性。
在一些可能的实现方式中,所述根据其对应的预设清除周期,将所述缓存数据从所述缓存区中删除,包括:
将在所述预设清除周期未被查看过的所述缓存数据从所述缓存区中删除。
该技术方案的有益效果在于:数据过期策略用于删除在预设清除周期内未被查看过的缓存数据,可以保持缓存区的数据更新和有效性。可以理解为,根据每个缓存数据的预设清除周期判断其是否在该周期内被查看过,如果缓存数据在预设清除周期内没有被查看过才会将其从缓存区中删除。通过删除未被查看的过期数据,可以释放缓存空间并确保缓存区中只保留被实际使用的数据,提高缓存的效率和性能。由此,清理未被查看的过期数据可以释放缓存区的存储空间,减少存储资源的占用,节省成本并提高整体***的可用存储容量。
第二方面,本申请还提供了一种电子设备,所述电子设备包括存储器和至少一个处理器,所述存储器存储有计算机程序,所述至少一个处理器被配置成执行所述计算机程序时实现以下步骤:
获取对表单页面的查看请求,所述查看请求中包括用于作为查看依据的查看标识;
将所述查看标识与缓存区中的缓存数据进行匹配,得到匹配结果;
基于所述匹配结果,获取与所述查看请求对应的显示值,并利用所述表单页面将所述显示值进行展示;
其中,所述缓存数据的获取方式包括:
监控对所述表单页面的编辑操作,以获取编辑数据;
根据预设缓存规则,利用所述编辑数据对所述缓存区中的存储值进行更新,以得到所述缓存数据。
第三方面,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被至少一个处理器执行时实现第一方面任一项方法的步骤,或者实现第二方面所述的电子设备的功能。
第四方面,本申请还提供了一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被至少一个处理器执行时实现第一方面任一项方法的步骤,或者实现第二方面所述的电子设备的功能。
附图说明
下面结合说明书附图和具体实施方式进一步说明本申请。
图1是本申请实施例提供的一种前端缓存方法的流程示意图。
图2是本申请实施例提供的一种获取缓存数据的流程示意图。
图3是本申请实施例提供的一种预设缓存规则的流程示意图。
图4是本申请实施例提供的一种数据过期策略的流程示意图。
图5是本申请实施例提供的一种电子设备的结构框图。
图6本申请实施例提供的一种计算机程序产品的结构示意图。
具体实施方式
下面将结合本申请的说明书附图以及具体实施方式,对本申请中的技术方案进行描述,需要说明的是,在不相冲突的前提下,以下描述的各实施方式之间或各技术特征之间可以任意组合形成新的实施方式。
本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施方式或设计方案不应被解释为比其他实施方式或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
本申请实施例中出现的第一、第二等描述,仅作示意与区分描述对象之用,没有次序之分,也不表示本申请实施例中对数量的特别限定,不能构成对本申请实施例的任何限制。
下面对本申请实施例技术领域和相关术语进行简单说明。
低代码平台:是一个由设计人员在云端,通过拖拉拽的方式快速的进行业务逻辑设计,然后将设计成果发布到用户端,供用户应用的一个SaaS云平台,这个平台可以是多租户可共用的平台。
SaaS云平台:是一种基于云计算技术的软件交付模式,它将软件作为一种服务提供给客户,客户可以通过互联网访问该服务。这种模式为用户提供SaaS(Software as aService)云服务,帮助企业降低成本,提高效率,更好地满足客户需求。SaaS云技术指的是一种云计算服务模型,其中软件应用程序以服务的形式交付给用户。在SaaS模型中,软件提供商负责开发、维护和托管应用程序,而用户通过互联网进行访问和使用,无需安装和管理软件在本地的基础设施。SaaS应用程序通常采用多租户架构,即多个用户共享同一个应用程序实例。作为服务交付模型,SaaS应用程序无需在用户本地进行软件安装和配置。用户只需通过支持的设备和网络访问应用程序,即可开始使用。在SaaS云技术领域,有许多不同类型的应用程序可供选择,涵盖了各种业务需求,例如企业资源规划(ERP)、客户关系管理(CRM)、人力资源管理(HRM)、项目管理、协同办公等。SaaS模型为用户提供了便利和灵活性,并减轻了软件部署和管理的负担,因此在各个行业和组织中得到广泛应用。
后端服务器(Backend Server):后端服务器是指运行在服务器端的软件***或服务,负责处理和管理数据、业务逻辑和持久化存储等后端任务。后端服务器通常是基于特定的编程语言和框架构建的,如Java、Python、Node.js等。它提供了接口和服务供前端***调用,并与数据库、文件***等进行交互。后端服务器主要关注数据处理、业务逻辑的实现、数据存储和处理性能等方面。
前端***(Frontend System):前端***是指运行在客户端(通常是浏览器)上的用户界面和交互层,负责用户界面的展示、用户输入的响应以及与后端服务器进行通信。前端***通常是使用HTML、CSS和JavaScript等技术构建的,它通过与后端服务器的接口进行通信来获取数据并进行展示。前端***主要关注用户界面、交互体验和与用户的直接交互。
接口:后端开发人员构建好服务,会提供出来一个访问地址,访问这个地址就可以获得返回的数据。可以理解为,接口是后端开发人员构建的一种服务,提供了一个访问地址(URL),通过访问该地址,前端可以向后端发送请求并获取返回的数据。接口通常使用标准的HTTP协议进行通信。前端可以使用网络请求库或浏览器内置的Fetch API等工具发送HTTP请求到接口地址,并根据接口的定义和规范来组织请求参数、设置请求头信息等。后端在接收到前端发送的请求后,会根据请求的类型和参数进行相应的处理,并生成需要返回给前端的数据。这些数据可以是以JSON、XML、HTML等格式进行封装和传输。通过接口的访问,前端可以获取到后端提供的数据,这些数据可以用于展示、处理或进一步操作。接口的设计和返回的数据结构通常由后端开发人员根据业务需求进行定义和实现,前端开发人员则根据接口文档和规范来调用和解析接口返回的数据。总而言之,接口是前后端协作的桥梁,它提供了一种标准化的方式,让前端能够与后端进行数据交互,实现数据的获取、传输和处理。
在本申请的技术方案中,后端服务器负责提供数据源,接收来自前端***的请求,根据请求参数从数据源中检索数据,并将结果返回给前端***。前端***负责发起查看请求、与后端服务器通信,并根据返回的数据进行页面展示。两者通过接口进行通信,共同完成数据的获取和展示工作。
相关的低代码平台生成的软件应用,在页面进行加载、显示、交互时,经常遇到接口的重复调用导致的一些问题,例如:接口请求次数增加、进而使服务器压力增大;页面性能下降后,页面数据加载时间长;页面、组件之间的数据不共享,用户使用不便;低代码平台进行二次开发时做数据回显,获取数据难度增加。
基于此,为了解决数据查询过程的效率不高问题,本申请提出一种低代码平台的前端缓存方法、电子设备、计算机可读存储介质及计算机程序产品,下面将结合附图以及具体实施方式,具体地对本申请实施例的技术方案以及本申请实施例的技术方案如何解决上述技术问题进行详细说明,需要说明的是,以下描述的各实施例之间或各技术特征之间可以任意组合形成新的实施例,对于相同或相似的概念或过程可能在某些实施例中不再赘述。显然,所描述的实施例是本申请实施例一部分实施例,而不是全部的实施例。
方法实施例
参见图1和图2,图1是本申请实施例提供的一种前端缓存方法的流程示意图,图2是本申请实施例提供的一种获取缓存数据的流程示意图。
本申请实施例提供了一种前端缓存方法,用于低代码平台,所述方法包括:
步骤S101:获取对表单页面的查看请求,所述查看请求中包括用于作为查看依据的查看标识;
步骤S102:将所述查看标识与缓存区中的缓存数据进行匹配,得到匹配结果;
步骤S103:基于所述匹配结果,获取与所述查看请求对应的显示值,并利用所述表单页面将所述显示值进行展示。
其中,所述缓存数据的获取方式包括:
步骤S201:监控对所述表单页面的编辑操作,以获取编辑数据;
步骤S202:根据预设缓存规则,利用所述编辑数据对所述缓存区中的存储值进行更新,以得到所述缓存数据。
由此,当用户发起对表单页面的查看请求时,获取该请求中的查看标识,该标识用作查看依据。将查看标识与缓存区中的缓存数据进行匹配,以确定是否存在与查看请求相关联的缓存数据。匹配结果可以是匹配成功和匹配不成功,根据匹配结果判断是否存在匹配成功的缓存数据。如果存在匹配成功的缓存数据,则继续下一步;如果匹配失败,可以通过其他方式获取相关数据。基于匹配结果,从缓存数据中获取与查看请求对应的显示值,用于在表单页面上展示给用户,以满足用户对表单页面的查看需求。同时,将用户对表单页面的编辑操作进行监控,以捕获编辑过程中产生的数据变化。例如,当用户修改表单字段的值时会捕获并记录这些编辑数据。根据预设的缓存规则,将编辑数据与缓存区中的存储值进行比较和匹配。如果发现存储值与编辑数据不一致或存储值已过期,可以根据编辑数据更新缓存区中对应的存储值,以确保缓存数据的准确性和实时性。
一方面,通过缓存的方式减少了表单页面的查看请求对后端服务器的频繁请求,从而加快页面的加载速度,提升用户的体验。另一方面,通过缓存数据的调用避免了重复请求相同的数据,减少了接口请求的次数,降低了对后端服务器的负载压力。又一方面,通过缓存区的设置,可以实现对缓存区的缓存数据的共享,通过对缓存区的缓存数据的共享不同组件或页面之间可以获取相同的数据,提高了数据的复用性和效率。又一方面,由于数据已缓存在前端,提供了一定程度的离线浏览能力。同时通过在前端进行数据缓存和展示,减少了对后端服务器的请求,降低了后端的负载压力,提高了页面查看时的整体性能和稳定性。又一方面,上述对缓存数据的获取方式,保持了缓存数据的更新的一致性,确保用户在查看表单页面时获取到最新的数据。
综上所述,上述前端缓存方法通过有效管理和利用缓存数据,提高了页面加载速度、减少了接口请求次数,并实现了数据的共享和离线浏览能力过程效率高,同时也减轻了后端的压力,提升了查看时的用户体验。同时,对编辑数据的监控和利用编辑数据更新缓存数据,以及时更新缓存数据,保持数据的准确性和实时性,从而提供更好的用户体验和数据展示效果。
本申请实施例中,用户可以是软件开发人员、***架构师、数据工程师、业务分析师等技术人员,可以是最终进行数据查询的使用者。
为便于理解,提供一个示例:一个低代码平台的报告生成表单,其中包含以下字段:
报告名称:用于输入报告的名称。
报告类型:用于选择报告的类型,例如销售报告、财务报告等。
报告日期:用于选择报告的日期。
报告内容:用于输入报告的详细内容。
用户发起对报告表单页面的查看请求,请求包括查看标识,当查看标识与缓存区中的某个报告数据的查看标识匹配成功时,从该报告数据中获取对应的显示值。
例如,用户请求查看报告ID为"123",而缓存区中存在一个匹配的报告数据,其中报告ID为"123",将获取该报告数据中的显示值,例如显示值为:报告名称"销售报告2023",报告类型"销售报告",报告日期"2000-01-01",以及报告内容“本月销售数据统计结果如下”。
利用获取到的显示值在报告表单页面进行展示,用户可以直接看到报告的名称、类型、日期和内容。
同时,为了更新缓存数据,可以监控用户在报告表单页面的编辑操作,以获取编辑数据。
假设用户在报告表单页面上将报告名称修改为"销售报告2023年上半年统计",可以监控并获取到该编辑数据。根据预设的缓存规则,根据编辑数据将报告ID为"123"的报告数据的报告名称存储值更新为"销售报告2023年上半年统计”。
通过上述示例,可以理解本实施例将获取查看请求、匹配缓存数据、基于匹配结果获取显示值、利用显示值展示表单页面,以及通过监控编辑操作和预设缓存规则来更新缓存数据的技术方案有机结合在一起,提高表单页面的加载速度和响应性能,减少不必要的接口请求,改善用户体验。
在Web应用中,用户可以通过浏览器发送HTTP请求来查看表单页面。在基于API的应用中,用户可以通过调用特定的API接口发送查看请求,接口可以接收查看标识作为参数,返回相应的数据用于展示。
本实施例对查看标识的形式不进行限制,其例如是字符串、数值、符号、代码或以上两种或多种的组合。字符串可以是唯一标识符、ID、编码等形式,例如,一个表单的查看标识可以是一个特定的UUID(Universally Unique Identifier)字符串或数据库表的主键。查看标识还可以是数值类型,例如自增ID等。
预设缓存规则指一组事先定义好的规则或策略,用于指导前端缓存方法中的缓存数据的管理和更新。其可以确定在何种条件下,以及如何对缓存数据进行存储、更新和清除。预设缓存规则的目的是提供一种灵活而可配置的方式,以根据特定的需求和业务场景来管理缓存数据。通过预设缓存规则,可以定义不同类型数据的缓存策略,包括缓存的存储位置、缓存的有效期、缓存的更新方式中的一种或多种。
预设缓存规则的具体内容可以根据实际需求进行定义,例如存储位置规则用于定义不同类型数据应该存储在哪个缓存容器中,以实现数据的分组管理。例如有效期规则用于指定缓存数据的有效期限,超过该期限的数据将被视为过期数据并被清除或更新。例如更新方式规则用于规定何时和如何更新缓存数据,例如基于编辑操作的数据更新或定期的刷新机制。还例如清除策略规则用于定义根据不同条件清除缓存数据的策略,可以是基于数据使用频率、空间限制或其他业务规则进行清除。
可以认为,将本实施例提供的预设缓存规则以用于低代码平台的前端缓存,可以优化缓存的使用和管理。合理定义和应用预设缓存规则可以有效地减少对后端服务器的请求,提供更快速和高效的数据展示和交互体验。
在一些实施例中,所述预设缓存规则还可以是设定缓存区的容量限制,当缓存数据超过设定的容量时,根据一定的策略进行数据淘汰,以释放存储空间。可以采用先进先出(FIFO)或最近最少使用(LRU)等淘汰策略来管理缓存容量,确保缓存区不会过度扩大或占用过多的***资源。
在一些实施例中,所述基于所述匹配结果,获取与所述查看请求对应的显示值(即步骤S103),可以包括:
当所述查看标识与所述缓存数据的存储值匹配成功时,将匹配成功的所述存储值作为显示值;
当所述查看标识与缓存区中的缓存数据匹配不成功时,依据所述查看标识对所述表单页面的后端服务器的数据源进行检索,以获取与所述查看标识相匹配的存储值并作为显示值。
由此,首先将查看标识与缓存区中的缓存数据的存储值进行比较,如果匹配成功,将匹配成功的存储值作为显示值。如果查看标识与缓存区中的缓存数据的存储值不匹配,即缓存数据不存在或已过期,可以根据查看标识与表单页面的后端服务器的数据源进行交互,通过查看标识向后端服务器发送请求,请求获取与查看标识相匹配的存储值。后端服务器接收到请求后,根据查看标识从数据库中检索数据,找到与查看标识相匹配的存储值并将获取的存储值作为响应,将获取的存储值作为显示值。
一方面,通过使用前端缓存,可以减少对后端服务器的频繁请求,从而减轻服务器的负载,提高低代码平台的响应速度和整体性能。另一方面,通过缓存存储值并在页面加载时直接获取显示值,可以避免重复的接口请求,加快页面加载速度,提供更快速和流畅的用户体验。又一方面,由于存储值已经缓存在前端,减少了与后端服务器的通信频率,降低了网络开销和数据传输成本,特别是在低带宽或不稳定网络环境下,效果更为显著。
综上所述,分别通过匹配缓存数据和后端数据获取最新的显示值,提高低代码平台的响应速度和整体性能。
作为一个示例,一个低代码平台上的商品详情页面包含以下字段:
商品ID:用于标识商品的唯一ID。商品名称:用于显示商品的名称。商品价格:用于显示商品的价格。商品描述:用于显示商品的描述信息。
用户发起对商品详情页面的查看请求,查看请求包括一个唯一的查看标识,例如商品的ID。缓存区中存在之前存储的商品数据,每个商品数据都包含一个唯一的查看标识和相应的存储值。将用户的查看标识与缓存区中的商品数据进行匹配,得到匹配结果。当查看标识与缓存区中某个商品数据的查看标识匹配成功时,将匹配成功的存储值作为显示值。具体如下:
用户请求查看商品ID为"123"的商品,而缓存区中存在一个匹配的商品数据,其中商品ID为"123",存储值为(名称:"手机3代",价格:8999,描述:"最新款手机")。获取该商品数据中的存储值,即(名称:"手机3代",价格:8999,描述:"最新款手机"),并作为显示值。将显示值应用到商品详情页面的对应字段上,用户可以直接看到商品的名称、价格和描述信息。
作为另一个示例,同上一个示例不同的是,查看标识与缓存区中的商品数据匹配不成功。这种情况下需要从后端服务器的数据源获取与查看标识相匹配的存储值作为显示值。具体如下:
用户请求查看商品ID为"456"的商品,但缓存区中没有与之匹配的商品数据。利用查看标识"456"向后端服务器发起请求,获取商品ID为"456"的存储值。后端服务器返回存储值(名称:"平板1代",价格:1299,描述:"最新款平板电脑")。将该存储值作为显示值,应用到商品详情页面的对应字段上,用户可以看到商品的名称、价格和描述信息。
通过上述两个示例,可以理解为当匹配成功时,直接从缓存中获取存储值作为显示值;当匹配不成功时,通过请求后端服务器获取相应的存储值作为显示值。这样可以在一定程度上减少对后端服务器的请求,提高页面加载速度和用户体验。
其中,缓存数据通常以键值对的形式存储,其中键表示数据的唯一标识符,值表示数据的具体内容。将查看标识与缓存数据的键进行比较,以确定是否存在匹配的缓存数据。如果存在匹配的缓存数据,即查看标识与缓存数据的键匹配成功,可以通过该键获取对应的存储值作为显示值进行展示。本实施例对匹配过程的具体实现不进行限制。例如,可以使用哈希表、关联数组或其他数据结构来存储缓存数据,然后根据键值进行查找和匹配。
在一些实施例中,当所述查看标识与缓存区中的缓存数据匹配不成功时,所述缓存数据的获取方式还包括:
利用从所述后端服务器的数据源获取的所述存储值,对所述缓存区中的缓存数据进行更新。
由此,当查看标识与缓存区中的缓存数据不匹配时,向后端服务器发送请求,请求获取与查看标识相匹配的存储值。根据查看标识从数据库或其他数据源中检索数据,找到与查看标识相匹配的存储值。后端服务器将获取的存储值作为响应返回给前端***。前端***接收到后端服务器的响应后,利用获取的存储值对缓存区中的缓存数据进行更新。
一方面,通过从后端服务器获取最新的存储值并更新缓存数据,保证了缓存数据与后端数据的一致性,可以避免因为缓存数据过期或不准确而导致的数据不一致问题。另一方面,由于存储值对缓冲数据的更新并不影响用户的查看请求进度,用户无需等待数据更新完成即可立即获得最新的显示值,有助于提高用户的交互体验和页面加载速度。
综上所述,通过从后端服务器获取存储值并更新缓存数据,保证了数据的一致性,提高了数据更新效率,减少了用户等待时间和网络传输成本。
当所述查看标识与缓存区中的缓存数据匹配不成功时,可以利用从后端服务器的数据源获取的存储值对缓存区中的缓存数据进行更新。从后端服务器进行数据获取的请求可以采用HTTP请求,例如使用GET(Get Request)或POST(Post Request)方法,并将查看标识作为请求参数传递给后端服务器。后端服务器接收到请求后,根据查看标识查询数据库或其他数据源,获取对应的存储值。
本实施例中,缓存数据的更新是指在缓存区中的数据发生添加或更改时,通过从后端服务器的数据源获取最新的存储值,将从后端服务器获取的最新存储值更新到缓存区中对应的数据项或键值对中,这样可以确保缓存数据与后端服务器中的数据保持同步和一致。
参见图3,图3是本申请实施例提供的一种预设缓存规则的流程示意图。
在一些实施例中,所述查看请求还包括密匙信息,所述密匙信息用于对加密后的编辑数据进行身份验证;所述缓存区包括多个缓存容器,每个所述缓存容器分别用于存储和管理不同的缓存数据,所述预设缓存规则包括:
步骤S301:判断所述编辑数据的数据类型,所述数据类型包括业务级数据和会话级数据;
步骤S302:当所述编辑数据的数据类型是业务级数据时,获取编辑数据和缓存容器之间的对应关系;
步骤S303:根据所述对应关系,将所述编辑数据存储到所述编辑数据对应的缓存容器中;
步骤S304:当所述编辑数据的数据类型是会话级数据时,利用加密算法对所述编辑数据进行加密;
步骤S305:根据编辑数据和缓存容器之间的对应关系,将加密后的所述编辑数据存储到所述编辑数据对应的缓存容器中。
由此,当查看请求包括查看标识和密钥信息时,通过查看标识可以确定需要查看的数据,并通过密钥信息对加密后的数据进行身份验证和访问控制。当编辑数据的数据类型是业务级数据时,根据预设缓存规则,获取编辑数据和缓存容器之间的对应关系,将编辑数据存储到对应的缓存容器中,以更新缓存数据,便于后续的查看请求可以从缓存中获取最新的数据。当编辑数据的数据类型是会话级数据时,利用加密算法对编辑数据进行加密,加密后的数据可以保护会话级数据的隐私和安全。根据编辑数据和缓存容器之间的对应关系,将加密后的编辑数据存储到对应的缓存容器中,可以更新缓存数据的同时确保会话级数据的机密性。
一方面,对于会话级数据,通过加密算法对编辑数据进行加密,可以保护数据的隐私和安全性。只有具有合法访问权限的用户能够解密和查看数据,增强了数据的保密性。另一方面,通过更新缓存数据,可以确保用户在不同页面上查看和编辑的数据保持一致。当数据发生变化时,及时更新缓存可以避免数据的不一致性问题。
综上所述,通过使用缓存和加密机制,可以提高数据访问效率、减少网络开销,提升用户体验,并确保数据的保密性和一致性。这有助于提升低代码平台的性能和安全性,提供更好的用户体验和数据保护机制。
本实施例对所述编辑数据进行加密的方式不进行限制,其例如是对称加密算法或非对称加密算法。查看请求包括密匙信息,用于查看在其权限范围内的编辑数据。
本实施例对编辑数据和缓存容器之间的对应关系的实现方式不进行限制。编辑数据和缓存容器之间的对应关系,可以通过以下方式实现:
设置一个映射表,记录每个编辑数据和对应缓存容器之间的关系,映射关系可以使用键值对的方式表示,其中键表示编辑数据的唯一标识,值表示对应的缓存容器。当需要存储编辑数据时,根据编辑数据的类型和特定属性,查找对应的缓存容器,并将数据存储在相应的容器中。
还可以通过以下方式实现:使用索引机制将编辑数据与缓存容器建立关联。可以为每个编辑数据分配一个唯一的索引值,这个索引值可以是数字、字符串或其他形式的标识符。同时,为每个缓存容器创建相应的索引,将索引值与对应的缓存容器关联起来。当需要存储编辑数据时,根据编辑数据的索引值查找对应的缓存容器,并将数据存储在相应的容器中。
作为一个示例,简单数据类型存储到浏览器window对象上的$dataFieldCache中,简单数据类型例如是短文本、长文本、数值、日期和自动编号等;复杂数据类型存储到sessionStorage的dataShareCache对象中,复杂数据类型例如是图片、附件、人员、部门和数组等。可以理解为,设有两个不同的缓存容器,分别是$dataFieldCache和dataShareCache,以用于实现多页面(即标签页)之间的缓存相对独立。存储方式对应的代码可以参考如下:
window{
$dataFieldCache{
pageUrl:{
dataCode:{
fieldCode:{
value:displayValue
}
}
}
}
}
sessionStorage{
dataShareCache{
dataCode:{
fieldType:{
value:displayValue
}
}
}
}
其中,$dataFieldCache缓存容器中,pageUrl用于表示页面的URL地址,作为缓存数据的索引;dataCode用于表示数据的标识,可以是字段的唯一标识或其他数据标识;fieldCode用于表示字段的标识;value用于表示字段的存储值;displayValue用于表示字段的显示值。可以认为,该缓存容器的作用是在页面加载或编辑操作时,将字段的存储值和显示值缓存起来,以便在后续的操作中能够快速获取和展示数据。通过使用页面URL、数据标识和字段标识作为索引,可以实现对特定字段数据的快速访问和更新。
dataShareCache缓存容器中,dataCodey用于表示数据的标识,可以是字段的唯一标识或其他数据标识;fieldType用于表示字段的类型;value用于表示字段的存储值。displayValue用于表示字段的显示值。该缓存容器的作用是存储共享的数据,这些数据可以被多个页面或组件共享和访问。通过使用数据标识和字段类型作为索引,可以实现对共享数据的快速访问和更新。
上述代码定义了两种缓存容器的数据结构,用于存储和管理页面中的字段数据和共享数据。这样可以提高页面的响应速度,减少对后端服务器的请求次数,并实现数据的共享和跨页面访问。由此,可以大幅减少页面请求的接口数量,不同页面间,图片、附件、人员、部门等数据类型的组件实现跨页面数据共享,例如在低代码平台二次开发代码编辑页面,无需再调用接口或服务,通过查询缓存实现显示值的获取。
在一些实施例中,在所述判断所述编辑数据的数据类型之前,所述预设缓存规则还包括:通过所述密匙信息进行用户验证,以获取所述用户的角色权限;
所述判断所述编辑数据的数据类型(即S301)包括:
将所述角色权限对应的数据作为编辑数据并用于判断,以确定所述编辑数据的数据类型。
当用户进行操作时,通过密匙信息进行用户验证,获取用户的角色权限,根据用户的角色权限设定不同的缓存数据获取策略。可以认为,对于普通用户可以监控全部数据变化,并将其存储到相应的缓存容器中。而对于管理员用户(相比普通用户的角色权限更高,数据安全要求也更高),监控部分数据变化并存储到适当的缓存容器中。在判断编辑数据的数据类型时,将用户角色权限对应的数据作为编辑数据,并用于判断数据类型。这样可以根据不同角色权限的用户,确定如何处理和缓存数据。
由此,不同角色的用户可以享有个性化的缓存数据获取策略,根据其角色需求进行数据缓存和更新,提高缓存方法的灵活性和效率。
本实施例基于用户角色权限的缓存数据获取策略能够提供更加安全、灵活和高效的数据管理方案,满足不同用户角色的需求,并确保数据的安全性和保密性。
其中,角色权限用于指示用户所拥有的特定权限级别或功能范围。每个用户可以被分配一个或多个角色,每个角色定义了用户可以执行的操作、访问的资源以及可使用的功能。角色权限的目的是根据用户的职责和需要,限制其对敏感或保密信息的访问和操作。不同的角色可能具有不同的权限级别,例如普通用户、管理员、超级管理员等。通过角色权限的分配和管理,可以确保安全性和数据的保密性。用户只能执行与其角色权限相匹配的操作,并且无法越权访问敏感数据。这有助于防止未经授权的用户对其进行恶意操作或访问敏感信息。
因此,根据用户的角色权限,可以确定其访问权限范围,从而在实施低代码平台的前端缓存方法时,针对不同角色的用户采取不同的缓存策略,确保对安全性和数据的保护。
作为一个示例,在一个低代码平台的应用中存在两个角色:普通用户和管理员。普通用户的角色权限较管理员低。
用户可以在一个表单页面上填写个人信息并进行保存。该表单包含字段如下:
姓名(文本字段)、年龄(数字字段)和电子邮件(文本字段)
针对以上情况,预设缓存规则如下:
管理员:仅缓存当前用户的姓名(文本字段)和年龄(数字字段)。
普通用户:缓存姓名(文本字段)、年龄(数字字段)和电子邮件(文本字段)。
具体实现时,可以在用户登录或访问表单页面时,通过密匙信息对用户进行身份验证,并获取用户的角色权限。根据用户的角色权限,确定缓存规则和数据类型判断的逻辑,可以提高安全性和数据隐私保护,确保了数据的访问权限和保密性。
参见图4,图4是本申请实施例提供的一种数据过期策略的流程示意图。
在一些实施例中,所述方法还包括:
获取数据过期策略,并通过所述数据过期策略删除所述缓存区中的过期数据。
所述数据过期策略可以包括:
步骤401:分别获取每个缓存数据对应的预设清除周期;预设清除周期例如是10分钟、1小时或20小时;
步骤402:针对所述每个缓存数据,根据其对应的预设清除周期,将所述缓存数据从所述缓存区中删除。
由此,在前端缓存方法中引入了数据过期策略,用于删除缓存区中的过期数据,以确保缓存数据的及时更新和有效性。获取每个缓存数据对应的预设清除周期,可以认为预设清除周期是指缓存数据在缓存区中存储的时间长度,超过该时间长度后,数据将被认为是过期的。针对每个缓存数据,根据其对应的预设清除周期,判断是否达到了过期时间。如果数据已经过期,将该缓存数据从缓存区中删除。删除过期数据可以释放缓存空间,并确保缓存数据的新鲜性。当下次需要访问该数据时,可以重新从后端服务器获取最新数据并进行缓存,保证数据的及时性和准确性。
一方面,通过删除过期数据,可以确保缓存区中的数据尽可能保持最新状态。过期数据的清理确保了缓存数据的准确性,避免了使用过期数据的情况。另一方面,定期清理过期数据可以释放缓存空间,避免缓存区过度占用存储资源。这对于有限的缓存容量和大量数据的场景下尤为重要,可以提高缓存的利用率。又一方面,通过及时删除过期数据,可以减少缓存区中无效数据的存在,提高缓存访问的效率。缓存区中只保留最新的、有效的数据,可以加快数据的读取和展示速度。又一方面,通过预设清除周期,可以灵活控制不同数据的存储时间。根据业务需求和数据更新频率,对不同的缓存数据可以设置不同的清除周期,使缓存数据的存储时间与数据的有效期相匹配。
综上所述,通过数据过期策略和过期数据的清理,可以保持缓存数据的准确性和新鲜性,节省缓存空间,在降低后端服务器的压力的前提下提高缓存访问效率,这有助于提升低代码平台的性能和资源利用率,提供更好的用户体验和可靠性。
作为一个示例,缓存区中有以下数据项:
缓存数据项1,对应的预设清除周期为10分钟。
缓存数据项2,对应的预设清除周期为1小时。
缓存数据项3,对应的预设清除周期为20小时。
对于缓存数据项1,检查其创建时间或最后更新时间与当前时间的差值。如果超过了10分钟,说明该数据项已过期,将其从缓存区中删除。
对于缓存数据项2,检查其创建时间或最后更新时间与当前时间的差值。如果超过了1小时,说明该数据项已过期,将其从缓存区中删除。
对于缓存数据项3,检查其创建时间或最后更新时间与当前时间的差值。如果超过了20小时,说明该数据项已过期,将其从缓存区中删除。
通过按照每个缓存数据项的预设清除周期进行检查和删除,可以定期清理缓存区中的过期数据,确保缓存数据的有效性和及时性。这有助于减少缓存区的存储空间占用,提高性能和数据的一致性。
在一些实施例中,所述根据其对应的预设清除周期,将所述缓存数据从所述缓存区中删除(即步骤S302),可以包括:
将在所述预设清除周期未被查看过的所述缓存数据从所述缓存区中删除。
由此可知,数据过期策略用于删除在预设清除周期内未被查看过的缓存数据,可以保持缓存区的数据更新和有效性。可以理解为,根据每个缓存数据的预设清除周期判断其是否在该周期内被查看过,如果缓存数据在预设清除周期内没有被查看过才会将其从缓存区中删除。通过删除未被查看的过期数据,可以释放缓存空间并确保缓存区中只保留被实际使用的数据,提高缓存的效率和性能。由此,清理未被查看的过期数据可以释放缓存区的存储空间,减少存储资源的占用,节省成本并提高可用存储容量。
在一个具体应用场景中,本申请实施例还提供了一种低代码平台的前端缓存方法,所述方法包括:
获取对表单页面的查看请求,所述查看请求中包括用于作为查看依据的查看标识以及密匙信息,所述密匙信息用于对加密后的编辑数据进行身份验证;
将所述查看标识与缓存区中的缓存数据进行匹配,得到匹配结果;
当所述查看标识与所述缓存数据的存储值匹配成功时,将匹配成功的所述存储值作为显示值;
当所述查看标识与缓存区中的缓存数据匹配不成功时,依据所述查看标识对所述表单页面的后端服务器的数据源进行检索,以获取与所述查看标识相匹配的存储值并作为显示值,并利用所述表单页面将所述显示值进行展示;
获取数据过期策略,并通过所述数据过期策略删除所述缓存区中的过期数据。
其中,所述缓存数据的获取方式包括:
监控对所述表单页面的编辑操作,以获取编辑数据;
根据预设缓存规则,利用所述编辑数据对所述缓存区中的存储值进行更新,以得到所述缓存数据;
当所述查看标识与缓存区中的缓存数据匹配不成功时,利用从所述后端服务器的数据源获取的所述存储值,对所述缓存区中的缓存数据进行更新。
所述缓存区包括多个缓存容器,每个所述缓存容器分别用于存储和管理不同的缓存数据,所述预设缓存规则包括:
判断所述编辑数据的数据类型,所述数据类型包括业务级数据和会话级数据;
当所述编辑数据的数据类型是业务级数据时,获取编辑数据和缓存容器之间的对应关系;
根据所述对应关系,将所述编辑数据存储到所述编辑数据对应的缓存容器中;
当所述编辑数据的数据类型是会话级数据时,利用加密算法对所述编辑数据进行加密;
根据编辑数据和缓存容器之间的对应关系,将加密后的所述编辑数据存储到所述编辑数据对应的缓存容器中。
所述数据过期策略包括:
分别获取每个缓存数据对应的预设清除周期;
针对所述每个缓存数据,将在预设清除周期未被查看过的所述缓存数据从所述缓存区中删除。
上述技术方案基于低代码平台,通过浏览器缓存,解决了组件对于接口的重复调用、不同页面、组件之间的数据共享问题。同时在进行二次开发时,可以从缓存根据存储值获取显示值。一方面,通过缓存数据,避免重复的网络请求,减少了与后端服务器的通信次数,从而显著提升了页面加载速度和响应性能。
另一方面,通过缓存数据,可以减少对后端服务器的请求量,降低了服务器的负载压力。又一方面,通过缓存数据,实现了数据的快速展示和回显,提供了更流畅的用户体验。用户无需过于等待数据的加载和刷新,能够立即查看和编辑数据,提高了用户的工作效率和满意度。又一方面,通过缓存数据,避免了频繁的网络请求,减少了数据传输的网络流量消耗。这对于移动设备和低网络带宽环境下的用户尤为重要,可以节省用户的流量费用。又一方面,通过采用缓存机制,可以灵活地管理和控制缓存数据,根据业务需求进行缓存数据的更新和清理。
总体而言,上述技术方案的有益效果体现在提升性能、改善用户体验、降低资源消耗和提高***可扩展性等方面,有助于构建高效、稳定和可靠的低代码平台。
设备实施例
本申请实施例提供了一种电子设备,其具体实施例与上述方法实施例中记载的实施例、所达到的技术效果一致,部分内容不再赘述。
所述电子设备包括存储器和至少一个处理器,所述存储器存储有计算机程序,所述至少一个处理器被配置成执行所述计算机程序时实现以下步骤:
获取对表单页面的查看请求,所述查看请求中包括用于作为查看依据的查看标识;
将所述查看标识与缓存区中的缓存数据进行匹配,得到匹配结果;
基于所述匹配结果,获取与所述查看请求对应的显示值,并利用所述表单页面将所述显示值进行展示;
其中,所述缓存数据的获取方式包括:
监控对所述表单页面的编辑操作,以获取编辑数据;
根据预设缓存规则,利用所述编辑数据对所述缓存区中的存储值进行更新,以得到所述缓存数据。
在一些实施例中,所述至少一个处理器执行所述计算机程序时采用以下方式基于所述匹配结果,获取与所述查看请求对应的显示值:
当所述查看标识与所述缓存数据的存储值匹配成功时,将匹配成功的所述存储值作为显示值;
当所述查看标识与缓存区中的缓存数据匹配不成功时,依据所述查看标识对所述表单页面的后端服务器的数据源进行检索,以获取与所述查看标识相匹配的存储值并作为显示值。
在一些实施例中,当所述查看标识与缓存区中的缓存数据匹配不成功时,所述至少一个处理器执行所述计算机程序时还采用以下方式获取所述缓存数据:
利用从所述后端服务器的数据源获取的所述存储值,对所述缓存区中的缓存数据进行更新。
在一些实施例中,所述查看请求还包括密匙信息,所述密匙信息用于对加密后的编辑数据进行身份验证;所述缓存区包括多个缓存容器,每个所述缓存容器分别用于存储和管理不同的缓存数据,所述预设缓存规则包括:
判断所述编辑数据的数据类型,所述数据类型包括业务级数据和会话级数据;
当所述编辑数据的数据类型是业务级数据时,获取编辑数据和缓存容器之间的对应关系;
根据所述对应关系,将所述编辑数据存储到所述编辑数据对应的缓存容器中;
当所述编辑数据的数据类型是会话级数据时,利用加密算法对所述编辑数据进行加密;
根据编辑数据和缓存容器之间的对应关系,将加密后的所述编辑数据存储到所述编辑数据对应的缓存容器中。
在一些实施例中,在所述判断所述编辑数据的数据类型之前,所述预设缓存规则还包括:通过所述密匙信息进行用户验证,以获取所述用户的角色权限;
所述判断所述编辑数据的数据类型包括:
将所述角色权限对应的数据作为编辑数据并用于判断,以确定所述编辑数据的数据类型。
在一些实施例中,所述至少一个处理器执行所述计算机程序时还实现以下步骤:
获取数据过期策略,并通过所述数据过期策略删除所述缓存区中的过期数据;
其中,所述数据过期策略包括:
分别获取每个缓存数据对应的预设清除周期;
针对所述每个缓存数据,根据其对应的预设清除周期,将所述缓存数据从所述缓存区中删除。
在一些实施例中,述至少一个处理器执行所述计算机程序时还采用以下方式根据其对应的预设清除周期,将所述缓存数据从所述缓存区中删除:
将在所述预设清除周期未被查看过的所述缓存数据从所述缓存区中删除。
参见图5,图5是本申请实施例提供的一种电子设备的结构框图。
电子设备10例如可以包括至少一个存储器11、至少一个处理器12以及连接不同平台***的总线13。
存储器11可以包括易失性存储器形式的可读介质,例如随机存取存储器(RAM)111和/或高速缓存存储器112,还可以进一步包括只读存储器(ROM)113。
其中,存储器11还存储有计算机程序,计算机程序可以被处理器12执行,使得处理器12实现上述任一项方法的步骤。
存储器11还可以包括具有至少一个程序模块115的实用工具114,这样的程序模块115包括但不限于:操作***、一个或者多个应用程序、其它程序模块以及程序数据,这些示例的每一个或某种组合中可能包括网络环境的实现。
相应的,处理器12可以执行上述计算机程序,以及可以执行实用工具114。
处理器12可以采用一个或多个应用专用集成电路(ASIC,Application SpecificIntegrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable Logic Device)、现场可编程门阵列(FPGA,Field-Programmable Gate Array)或其他电子元件。
总线13可以为表示几类总线结构的一种或多种,包括存储器总线或者存储器控制器、***总线、图形加速端口、处理器或者使用多种总线结构的任意总线结构的局域总线。
电子设备10也可以与一个或多个外部设备例如键盘、指向设备、蓝牙设备等通信,还可与一个或者多个能够与该电子设备10交互的设备通信,和/或与使得该电子设备10能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等)通信。这种通信可以通过输入输出接口14进行。并且,电子设备10还可以通过网络适配器15与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器15可以通过总线13与电子设备10的其它模块通信。应当明白,尽管图中未示出,但在实际应用中可以结合电子设备10使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID***、磁带驱动器以及数据备份存储平台等。
存储介质实施例
本申请实施例提供了一种计算机可读存储介质,其具体实施例与上述方法实施例中记载的实施例、所达到的技术效果一致,部分内容不再赘述。
所述计算机可读存储介质存储有计算机程序,所述计算机程序被至少一个处理器执行时实现上述任一项方法的步骤。
计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。在本申请实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。计算机可读存储介质例如可以为但不限于电、磁、光、电磁、红外线,或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件,或者上述的任意合适的组合。
计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读存储介质还可以是任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等,或者上述的任意合适的组合。可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,程序设计语言包括面向对象的程序设计语言诸如Java、C++等,还包括常规的过程式程序设计语言诸如C语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行,或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
程序产品实施例
本申请实施例提供了一种计算机程序产品,其具体实施例与上述方法实施例中记载的实施例、所达到的技术效果一致,部分内容不再赘述。
所述计算机程序产品包括计算机程序,所述计算机程序被至少一个处理器执行时实现上述任一项方法的步骤。
参见图6,图6本申请实施例提供的一种计算机程序产品的结构示意图。
所述计算机程序产品用于实现上述任一项方法的步骤。计算机程序产品可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的计算机程序产品不限于此,计算机程序产品可以采用一个或多个计算机可读介质的任意组合。
本申请从使用目的上,效能上,进步及新颖性等观点进行阐述,已符合专利法所强调的功能增进及使用要件,本申请以上的说明书及说明书附图,仅为本申请的较佳实施例而已,并非以此局限本申请,因此,凡一切与本申请构造,装置,特征等近似、雷同的,即凡依本申请专利申请范围所作的等同替换或修饰等,皆应属本申请的专利申请保护的范围之内。

Claims (8)

1.一种低代码平台的前端缓存方法,其特征在于,所述方法包括:
获取对表单页面的查看请求,所述查看请求中包括用于作为查看依据的查看标识;
将所述查看标识与缓存区中的缓存数据进行匹配,得到匹配结果;
基于所述匹配结果,获取与所述查看请求对应的显示值,并利用所述表单页面将所述显示值进行展示;
其中,所述缓存数据的获取方式包括:
监控对所述表单页面的编辑操作,以获取编辑数据;
根据预设缓存规则,利用所述编辑数据对所述缓存区中的存储值进行更新,以得到所述缓存数据;
所述查看请求还包括密匙信息,所述密匙信息用于对加密后的编辑数据进行身份验证;所述缓存区包括多个缓存容器,每个所述缓存容器分别用于存储和管理不同的缓存数据,所述预设缓存规则包括:
判断所述编辑数据的数据类型,所述数据类型包括业务级数据和会话级数据;
当所述编辑数据的数据类型是业务级数据时,获取编辑数据和缓存容器之间的对应关系;
根据所述对应关系,将所述编辑数据存储到所述编辑数据对应的缓存容器中;
当所述编辑数据的数据类型是会话级数据时,利用加密算法对所述编辑数据进行加密;
根据编辑数据和缓存容器之间的对应关系,将加密后的所述编辑数据存储到所述编辑数据对应的缓存容器中;
同时,所述数据类型包括简单数据类型和复杂数据类型,所述简单数据类型包括短文本、长文本、数值、日期和自动编号,所述复杂数据类型包括图片、附件、人员、部门和数组,所述简单数据类型和所述复杂数据类型的数据分别存储在不同的缓存容器中,分别用于存储和管理页面中的字段数据和共享数据,以用于实现多页面之间的缓存相对独立。
2.根据权利要求1所述的前端缓存方法,其特征在于,所述基于所述匹配结果,获取与所述查看请求对应的显示值,包括:
当所述查看标识与所述缓存数据的存储值匹配成功时,将匹配成功的所述存储值作为显示值;
当所述查看标识与缓存区中的缓存数据匹配不成功时,依据所述查看标识对所述表单页面的后端服务器的数据源进行检索,以获取与所述查看标识相匹配的存储值并作为显示值。
3.根据权利要求2所述的前端缓存方法,其特征在于,当所述查看标识与缓存区中的缓存数据匹配不成功时,所述缓存数据的获取方式还包括:
利用从所述后端服务器的数据源获取的所述存储值,对所述缓存区中的缓存数据进行更新。
4.根据权利要求1所述的前端缓存方法,其特征在于,在所述判断所述编辑数据的数据类型之前,所述预设缓存规则还包括:通过所述密匙信息进行用户验证,以获取所述用户的角色权限;
所述判断所述编辑数据的数据类型包括:
将所述角色权限对应的数据作为编辑数据并用于判断,以确定所述编辑数据的数据类型。
5.根据权利要求1所述的前端缓存方法,其特征在于,所述方法还包括:
获取数据过期策略,并通过所述数据过期策略删除所述缓存区中的过期数据;
其中,所述数据过期策略包括:
分别获取每个缓存数据对应的预设清除周期;
针对所述每个缓存数据,根据其对应的预设清除周期,将所述缓存数据从所述缓存区中删除。
6.根据权利要求5所述的前端缓存方法,其特征在于,所述根据其对应的预设清除周期,将所述缓存数据从所述缓存区中删除,包括:
将在所述预设清除周期未被查看过的所述缓存数据从所述缓存区中删除。
7.一种电子设备,其特征在于,所述电子设备包括存储器和至少一个处理器,所述存储器存储有计算机程序,所述至少一个处理器被配置成执行所述计算机程序时实现以下步骤:
获取对表单页面的查看请求,所述查看请求中包括用于作为查看依据的查看标识;
将所述查看标识与缓存区中的缓存数据进行匹配,得到匹配结果;
基于所述匹配结果,获取与所述查看请求对应的显示值,并利用所述表单页面将所述显示值进行展示;
其中,所述缓存数据的获取方式包括:
监控对所述表单页面的编辑操作,以获取编辑数据;
根据预设缓存规则,利用所述编辑数据对所述缓存区中的存储值进行更新,以得到所述缓存数据;
所述查看请求还包括密匙信息,所述密匙信息用于对加密后的编辑数据进行身份验证;所述缓存区包括多个缓存容器,每个所述缓存容器分别用于存储和管理不同的缓存数据,所述预设缓存规则包括:
判断所述编辑数据的数据类型,所述数据类型包括业务级数据和会话级数据;
当所述编辑数据的数据类型是业务级数据时,获取编辑数据和缓存容器之间的对应关系;
根据所述对应关系,将所述编辑数据存储到所述编辑数据对应的缓存容器中;
当所述编辑数据的数据类型是会话级数据时,利用加密算法对所述编辑数据进行加密;
根据编辑数据和缓存容器之间的对应关系,将加密后的所述编辑数据存储到所述编辑数据对应的缓存容器中;
同时,所述数据类型包括简单数据类型和复杂数据类型,所述简单数据类型包括短文本、长文本、数值、日期和自动编号,所述复杂数据类型包括图片、附件、人员、部门和数组,所述简单数据类型和所述复杂数据类型的数据分别存储在不同的缓存容器中,分别用于存储和管理页面中的字段数据和共享数据,以用于实现多页面之间的缓存相对独立。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被至少一个处理器执行时实现权利要求1至6任一项方法的步骤,或者实现权利要求7所述的电子设备的功能。
CN202311136627.5A 2023-09-05 2023-09-05 低代码平台的前端缓存方法及相关设备 Active CN116860862B8 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311136627.5A CN116860862B8 (zh) 2023-09-05 2023-09-05 低代码平台的前端缓存方法及相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311136627.5A CN116860862B8 (zh) 2023-09-05 2023-09-05 低代码平台的前端缓存方法及相关设备

Publications (3)

Publication Number Publication Date
CN116860862A CN116860862A (zh) 2023-10-10
CN116860862B true CN116860862B (zh) 2023-12-08
CN116860862B8 CN116860862B8 (zh) 2023-12-26

Family

ID=88222065

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311136627.5A Active CN116860862B8 (zh) 2023-09-05 2023-09-05 低代码平台的前端缓存方法及相关设备

Country Status (1)

Country Link
CN (1) CN116860862B8 (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102012907A (zh) * 2010-11-10 2011-04-13 上海光芒科技有限公司 一种浏览器客户端侧的缓存方法及***
CN106294365A (zh) * 2015-05-15 2017-01-04 阿里巴巴集团控股有限公司 一种单页web应用的页面数据处理方法及设备
CN112417343A (zh) * 2020-12-29 2021-02-26 中科院计算技术研究所大数据研究院 一种基于前端Angular框架缓存数据的方法
CN114547106A (zh) * 2022-02-22 2022-05-27 网银在线(北京)科技有限公司 数据查询方法及装置、存储介质、计算机***
CN114979234A (zh) * 2022-04-22 2022-08-30 中国工商银行股份有限公司 分布式集群***中会话控制共享方法及***
CN116186022A (zh) * 2021-11-26 2023-05-30 北京神州泰岳软件股份有限公司 表单处理方法、装置、分布式表单***和计算机存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9112537B2 (en) * 2011-12-22 2015-08-18 Intel Corporation Content-aware caches for reliability
US11556608B2 (en) * 2021-03-22 2023-01-17 Salesforce.Com, Inc. Caching for single page web applications

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102012907A (zh) * 2010-11-10 2011-04-13 上海光芒科技有限公司 一种浏览器客户端侧的缓存方法及***
CN106294365A (zh) * 2015-05-15 2017-01-04 阿里巴巴集团控股有限公司 一种单页web应用的页面数据处理方法及设备
CN112417343A (zh) * 2020-12-29 2021-02-26 中科院计算技术研究所大数据研究院 一种基于前端Angular框架缓存数据的方法
CN116186022A (zh) * 2021-11-26 2023-05-30 北京神州泰岳软件股份有限公司 表单处理方法、装置、分布式表单***和计算机存储介质
CN114547106A (zh) * 2022-02-22 2022-05-27 网银在线(北京)科技有限公司 数据查询方法及装置、存储介质、计算机***
CN114979234A (zh) * 2022-04-22 2022-08-30 中国工商银行股份有限公司 分布式集群***中会话控制共享方法及***

Also Published As

Publication number Publication date
CN116860862B8 (zh) 2023-12-26
CN116860862A (zh) 2023-10-10

Similar Documents

Publication Publication Date Title
US8572023B2 (en) Data services framework workflow processing
US10909064B2 (en) Application architecture supporting multiple services and caching
US7966383B2 (en) Client-server systems and methods for accessing metadata information across a network using proxies
US9628493B2 (en) Computer implemented methods and apparatus for managing permission sets and validating user assignments
EP2143051B1 (en) In-memory caching of shared customizable multi-tenant data
US9740435B2 (en) Methods for managing content stored in cloud-based storages
US9201610B2 (en) Cloud-based storage deprovisioning
US9854052B2 (en) Business object attachments and expiring URLs
US9020973B2 (en) User interface model driven data access control
US10268721B2 (en) Protected handling of database queries
US11810031B2 (en) On-site appointment assistant
US9292454B2 (en) Data caching policy in multiple tenant enterprise resource planning system
CN109587233A (zh) 多云容器管理方法、设备及计算机可读存储介质
US11902852B2 (en) On-site appointment assistant
US20210081550A1 (en) Serving Data Assets Based on Security Policies by Applying Space-Time Optimized Inline Data Transformations
US20110213816A1 (en) System, method and computer program product for using a database to access content stored outside of the database
US9485304B2 (en) Asset streaming and delivery
US20220035907A1 (en) Distributed security introspection
US10649964B2 (en) Incorporating external data into a database schema
US20180152434A1 (en) Virtual content repository
CN116860862B (zh) 低代码平台的前端缓存方法及相关设备
US11537499B2 (en) Self executing and self disposing signal
US20210152650A1 (en) Extraction of data from secure data sources to a multi-tenant cloud system
US8453166B2 (en) Data services framework visibility component
WO2022071946A1 (en) Data transformations based on policies

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
CI03 Correction of invention patent

Correction item: Inventor

Correct: silver dollar|Chang Jiaqi|Qi Yu|Jiang Nan

False: White Poplar|Chang Jiaqi|Qi Yu|Jiang Nan

Number: 49-02

Page: The title page

Volume: 39

Correction item: Inventor

Correct: silver dollar|Chang Jiaqi|Qi Yu|Jiang Nan

False: White Poplar|Chang Jiaqi|Qi Yu|Jiang Nan

Number: 49-02

Volume: 39

CI03 Correction of invention patent
OR01 Other related matters
OR01 Other related matters
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Front end caching methods and related devices for low code platforms

Granted publication date: 20231208

Pledgee: Haidian Beijing science and technology enterprise financing Company limited by guarantee

Pledgor: Beijing Better Cloud Technology Co.,Ltd.

Registration number: Y2024110000207

PE01 Entry into force of the registration of the contract for pledge of patent right