CN110674366B - 基于ognl表达式语言的数据分发方法、电子装置及存储介质 - Google Patents
基于ognl表达式语言的数据分发方法、电子装置及存储介质 Download PDFInfo
- Publication number
- CN110674366B CN110674366B CN201910842823.1A CN201910842823A CN110674366B CN 110674366 B CN110674366 B CN 110674366B CN 201910842823 A CN201910842823 A CN 201910842823A CN 110674366 B CN110674366 B CN 110674366B
- Authority
- CN
- China
- Prior art keywords
- data
- matching
- basic information
- matching condition
- ognl
- 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
Links
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/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
-
- 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/901—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0207—Discounts or incentives, e.g. coupons or rebates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/08—Insurance
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明公开了一种基于OGNL表达式语言的数据分发方法,应用于电子装置,该方法包括从数据库中获取第一数据的属性信息,基于属性信息根据预先确定的匹配条件生成规则生成匹配条件并存储于数据库,接收客户端发出的数据发放请求,解析数据发放请求中携带的第一数据的基本信息,基于OGNL表达式语言对基本信息及匹配条件进行匹配分析,判断基本信息是否满足所述匹配条件,根据匹配结果判断是否发放与第一数据对应的第二数据后,分析匹配结果,若基本信息与匹配条件的匹配结果一致,则允许将第二数据发放给客户端。本发明能够实现用户自主查询自身是否符合发放第二数据的条件,并在满足发放条件的情况下主动获取第二数据,提高了用户体验感。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种基于OGNL表达式语言的数据分发方法、电子装置及存储介质。
背景技术
互联网时代,服务提供商经常有向用户分发数据的需求。例如,保险机构可能需要分发附加数据(例如卡券或礼包)给用户。对于客制化的投保服务,不同用户可能还需发放不同的附加数据。目前,这种附加数据的分发一般是由服务提供商在系统中预先存放符合数据分发的用户名单,定期根据用户名单向客户发放数据。
但是采用这种发放方式无法做到让用户随时主动查询自身是否符合发放数据的条件,用户体验感差。
发明内容
本发明的主要目的在于提供一种基于OGNL表达式语言的数据分发方法、电子装置及存储介质,旨在解决现有的数据发放方式对于用户来说缺乏主动性,无法做到让用户主动查询自身是否符合发放数据的条件,用户体验感差的问题。
为实现上述目的,本发明提供的一种基于OGNL表达式语言的数据分发方法,应用于电子装置,该方法包括:
建立步骤:从数据库中获取第一数据的属性信息,基于所述属性信息根据预先确定的匹配条件生成规则生成匹配条件并存储于数据库,其中,所述属性信息包括:第一数据的名称,第一数据的数据范围、第一数据的数据值,及多个第一数据之间允许的操作类型;
获取步骤:接收客户端发出的数据发放请求,解析所述数据发放请求中携带的第一数据的基本信息,基于OGNL表达式语言对所述基本信息及匹配条件进行匹配分析,判断所述基本信息是否满足所述匹配条件,根据匹配结果判断是否发放与所述第一数据对应的第二数据;及
发放步骤:分析所述匹配结果,若所述基本信息与所述匹配条件的匹配结果一致,则允许将第二数据发放给所述客户端。
优选地,所述匹配条件生成规则包括:
根据所述第一数据的数据范围、名称及第一数据值生成第一条件;及
根据多个所述第一条件及所述操作类型生成第二条件作为所述第一数据的匹配条件。
优选地,所述基于OGNL表达式语言对所述基本信息及匹配条件进行匹配分析包括:
将所述基本信息存储于基于OGNL创建的上下文环境的根对象;
利用OGNL表达式语言对所述匹配条件进行描述生成所述匹配条件的表达式;及
根据所述表达式对所述存储于根对象的基本信息进行遍历查询,判断所述基本信息与表达式匹配是否一致,根据匹配结果输出相应的第二数据发放结果。
优选地,该方法还包括反馈步骤:
若所述基本信息与匹配条件匹配结果不一致,则自动生成记录信息并反馈给所述客户端,其中,所述记录信息包括所述基本信息中与所述匹配条件不匹配的第一数据的名称及/或第一数据的数据值。
优选地,该方法还包括注解步骤:
为所述基本信息形成的每组代码添加预设注解,所述注解包括对应的第一数据的名称、第一数据的数据范围及第一数据的数据值。
为实现上述目的,本发明还进一步提供一种电子装置,所述电子装置包括存储器和处理器,所述存储器上存储有基于OGNL表达式语言的数据分发程序,所述基于OGNL表达式语言的数据分发程序被所述处理器执行时实现如下步骤:
建立步骤:从数据库中获取第一数据的属性信息,基于所述属性信息根据预先确定的匹配条件生成规则生成匹配条件并存储于数据库,其中,所述属性信息包括:第一数据的名称,第一数据的数据范围、第一数据的数据值,及多个第一数据之间允许的操作类型;
获取步骤:接收客户端发出的数据发放请求,解析所述数据发放请求中携带的第一数据的基本信息,基于OGNL表达式语言对所述基本信息及匹配条件进行匹配分析,判断所述基本信息是否满足所述匹配条件,根据匹配结果判断是否发放与所述第一数据对应的第二数据;及
发放步骤:分析所述匹配结果,若所述基本信息与所述匹配条件的匹配结果一致,则允许将第二数据发放给所述客户端。
优选地,所述匹配条件生成规则包括:
根据所述第一数据的数据范围、名称及第一数据值生成第一条件;及
根据多个所述第一条件及所述操作类型生成第二条件作为所述第一数据的匹配条件。
优选地,所述基于OGNL表达式语言对所述基本信息及匹配条件进行匹配分析包括:
将所述基本信息存储于基于OGNL创建的上下文环境的根对象;
利用OGNL表达式语言对所述匹配条件进行描述生成所述匹配条件的表达式;及
根据所述表达式对所述存储于根对象的基本信息进行遍历查询,判断所述基本信息与表达式匹配是否一致,根据匹配结果输出相应的第二数据发放结果。
优选地,该电子装置还执行以下步骤:
若所述基本信息与匹配条件匹配结果不一致,则自动生成记录信息并反馈给所述客户端,其中,所述记录信息包括所述基本信息中与所述匹配条件不匹配的第一数据的名称及/或第一数据的数据值。
为实现上述目的,本发明进一步提供一种计算机可读存储介质,所述计算机可读存储介质上存储有基于OGNL表达式语言的数据分发程序,所述基于OGNL表达式语言的数据分发程序可被一个或者多个处理器执行,以实现如上所述的基于OGNL表达式语言的数据分发方法的步骤。
本发明提出的基于OGNL表达式语言的数据分发方法、电子装置及存储介质,通过在数据库中预先设置好匹配条件,基于OGNL表达式语言对客户端上传的第一数据的基本信息及匹配条件进行匹配,根据匹配结果自动给满足条件的客户端分发第二数据。本发明能够实现用户自主查询自身是否符合发放第二数据的条件,并在满足发放条件的情况下主动获取第二数据,提高了用户体验感。
附图说明
图1为本发明电子装置较佳实施例的应用环境图;
图2为图1中基于OGNL表达式语言的数据分发程序较佳实施例的程序模块示意图;
图3为本发明基于OGNL表达式语言的数据分发方法较佳实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参附图做进一步说明。
具体实施方式
为了使本发明的目的、技术本实施例及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术本实施例可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术本实施例的结合出现相互矛盾或无法实现时应当认为这种技术本实施例的结合不存在,也不在本发明要求的保护范围之内。
本发明提供一种电子装置1。
所述电子装置1包括,但不仅限于,存储器11、处理器12及网络接口13。
其中,存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器11在一些实施例中可以是电子装置1的内部存储单元,例如该电子装置1的硬盘。存储器11在另一些实施例中也可以是电子装置1的外部存储设备,例如该电子装置1上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。
进一步地,存储器11还可以既包括电子装置1的内部存储单元也包括外部存储设备。存储器11不仅可以用于存储安装于电子装置1的应用软件及各类数据,例如基于OGNL表达式语言的数据分发程序10的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器12在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器11中存储的程序代码或处理数据,例如执行基于OGNL表达式语言的数据分发程序10等。
网络接口13可选的可以包括标准的有线接口、无线接口(如WI-FI接口),通常用于在该电子装置与其他电子设备之间建立通信连接。
客户端14可以是桌上型计算机、笔记本、平板电脑、手机等。
网络15可以为互联网、云网络、无线保真(Wi-Fi)网络、个人网(PAN)、局域网(LAN)和/或城域网(MAN)。网络环境中的各种设备可以被配置为根据各种有线和无线通信协议连接到通信网络。这样的有线和无线通信协议的例子可以包括但不限于以下中的至少一个:传输控制协议和互联网协议(TCP/IP)、用户数据报协议(UDP)、超文本传输协议(HTTP)、文件传输协议(FTP)、ZigBee、EDGE、IEEE 802.11、光保真(Li-Fi)、802.16、IEEE 802.11s、IEEE 802.11g、多跳通信、无线接入点(AP)、设备对设备通信、蜂窝通信协议和/或蓝牙(BlueTooth)通信协议或其组合。
可选地,该电子装置1还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以称为显示屏或显示单元,用于显示在电子装置1中处理的信息以及用于显示可视化的用户界面。
图1仅示出了具有组件11-15以及基于OGNL表达式语言的数据分发程序10的电子装置1,本领域技术人员可以理解的是,图1示出的结构并不构成对电子装置1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
在一实施例中,图1的基于OGNL表达式语言的数据分发程序10被处理器12执行时,实现以下步骤:
建立步骤:从数据库中获取第一数据的属性信息,基于所述属性信息根据预先确定的匹配条件生成规则生成匹配条件并存储于数据库,其中,所述属性信息包括:第一数据的名称,第一数据的数据范围、第一数据的数据值,及多个第一数据之间允许的操作类型;
获取步骤:接收客户端发出的数据发放请求,解析所述数据发放请求中携带的第一数据的基本信息,基于OGNL表达式语言对所述基本信息及匹配条件进行匹配分析,判断所述基本信息是否满足所述匹配条件,根据匹配结果判断是否发放与所述第一数据对应的第二数据;及
发放步骤:分析所述匹配结果,若所述基本信息与所述匹配条件的匹配结果一致,则允许将第二数据发放给所述客户端。
在另一实施例中,该方法还包括反馈步骤:
若所述基本信息与匹配条件匹配结果不一致,则自动生成记录信息并反馈给所述客户端,其中,所述记录信息包括所述基本信息中与所述匹配条件不匹配的第一数据的名称及/或第一数据的数据值。
在另一实施例中,该方法还包括注解步骤:
为所述基本信息形成的每组代码添加预设注解,所述注解包括对应的第一数据的名称、第一数据的数据范围及第一数据的数据值。
关于上述步骤的详细介绍,请参照下述图2关于基于OGNL表达式语言的数据分发程序10实施例的程序模块示意图及图3关于基于OGNL表达式语言的数据分发方法实施例的方法流程示意图的说明。
参照图2所示,为图1中基于OGNL表达式语言的数据分发程序10实施例的程序模块示意图。基于OGNL表达式语言的数据分发程序10被分割为多个模块,该多个模块存储于存储器11中,并由处理器12执行,以完成本发明。本发明所称的模块是指能够完成特定功能的一系列计算机程序指令段。
在本实施例中,所述基于OGNL表达式语言的数据分发程序10包括建立模块110、获取模块120及发放模块130。
第一配置模块110,用于根据第一数据的属性信息及预先确定的匹配条件生成规则生成匹配条件。
在本实施例中,电子装置1从数据库中获取第一数据的属性信息,基于所述属性信息根据预先确定的匹配条件生成规则生成匹配条件并存储于数据库,其中,所述属性信息包括:第一数据的名称,第一数据的数据范围、第一数据的数据值,及多个第一数据之间允许的操作类型。
在本实施例中,以保险单(简称保单)为例具体说明,所述第一数据可以是商业险保险、三责险(第三方责任险)保费等。在其他实施例中,所述第一数据还可以是承保机构、险种、是否投保车损险、是否投保车上人员险、投保方连续投保年数、续保评分、承保车辆年限、品牌筛选、网点筛选等项目相关的数据。
所述第一数据的数据范围通过以下关系式进行设置:>(大于)、>=(大于或等于)、<(小于)、<=(小于或等于)、==(等于)、!=(不等于)、contains(包含)、not contains(不包含)。
所述第一数据的数据值为第一数据的数值或文本内容,例如某商业险保费金额为10万,则其数据值为10万。
所述操作类型包括:&&(与)和||(或)等。
其中,所述匹配条件生成规则包括:
根据所述第一数据的数据范围、名称及第一数据值生成第一条件;及
根据多个所述第一条件及所述操作类型生成第二条件作为所述第一数据的匹配条件。
例如,有两个第一条件分别为:1000<=商业险保额<=5000及100<=三责险保费<=500,则生成的第二条件(即匹配条件)为:1000<=商业险保额<=5000&&100<=三责险保费<=500。
所述匹配条件生成后存储于数据库可长期使用,后期还能够根据业务的需求增加或减少第一条件的数量,并通过所述条件生成规则生成新的匹配条件。
第二配置模块120,用于判断客户端14上传的第一数据(商业险保险、三责险、保费等)的基本信息是否满足匹配条件,根据匹配结果决定是否发放第二数据(例如,卡券、礼包等)。
在本实施例中,电子装置1接收客户端14发出的数据发放请求,解析所述数据发放请求中携带的第一数据的基本信息(基本信息包括第一数据的名称及第一数据值),基于OGNL表达式语言对所述基本信息及匹配条件进行匹配分析,判断所述基本信息是否满足所述匹配条件,根据匹配结果判断是否发放与所述第一数据对应的第二数据。
其中,所述基本信息存储于所述电子装置1的信息队列(“消息队列”是在消息的传输过程中保存数据消息的容器,用于跨系统之间的数据消息传递)。
所述基于OGNL表达式语言对所述基本信息及匹配条件进行匹配分析包括:
将所述基本信息存储在基于OGNL创建的上下文环境(context)的根对象(root)中;
利用OGNL表达式语言对所述匹配条件进行描述生成所述匹配条件的表达式(expression);及
根据所述表达式(expression)对所述存储于根对象(root)中的基本信息进行遍历查询,判断所述基本信息与表达式匹配是否一致,根据匹配结果输出相应的第二数据(例如,卡券、礼包等)发放结果。
OGNL是Object-Graph Navigation Language的缩写,它是一种功能强大的表达式语言,通过它简单一致的表达式语法,可以存取对象的任意属性,调用对象的方法,遍历整个对象的结构图,实现字段类型转化等功能。它使用相同的表达式去存取对象的属性。OGNL在许多的地方都有应用,例如:
1.作为GUI元素(textfield,combobox等)到模型对象的绑定语言;
2.数据库表到Swing的TableModel的数据源语言;
3.Web组件和后台Model对象的绑定语言,如:WebOGNL,Tapestry,WebWork,WebObjects;
4.作为Jakarata Commons BeanUtils或者JSTL的表达式语言的一个更具表达力的替代语言。
另外,java中很多事件可以使用OGNL来完成,例如:列表映射和选择。对于开发责来说,使用OGNL可以用简洁的语法来完成对java对象的导航。通常来说:通过一个“路径”来完成对象信息的导航,这个“路径”可以是到java bean的某个属性,或者集合中的某个索引的对象等,而不是直接使用get或者set方法来完成。
基于OGNL语法的简洁性、使用的方便性,以及在性能方面的优势,通过使用OGNL的过滤和投影集合功能,将客户端14上传的基本信息设置到上下文环境(context)的根对象(root)中,匹配条件作为表达式(expression),通过调用Ognl.getValue(formula,context,context.getRoot())即可得到匹配结果(是否发放第二数据)。
第一获取模块130,用于当判断客户端14上传的第一数据(商业险保险、三责险、保费等)的基本信息与匹配条件的匹配结果一致时,将第二数据(例如,卡券、礼包)发放给客户端14。
在本实施例中,电子装置1分析客户端14上传的第一数据(商业险保险、三责险、保费等)的基本信息与匹配条件的匹配结果后,若基本信息与OGNL表达式的匹配结果一致,则允许将第二数据(例如,卡券、礼包)发放给所述客户端14,否则,不允许发放第二数据。
在另一实施例中,该程序还包括反馈模块:
用于当判断基本信息与匹配条件匹配结果不一致时,自动生成记录信息并反馈给客户端14。
在本实施例中,为了能够让用户得知基本信息与匹配条件不匹配的原因,因此该程序通过反馈模块在判断当基本信息与匹配条件的匹配结果不一致时能够自动生成记录信息并反馈至保险机构的相关工作人员的客户端14(例如电脑或手机),或保险客户的客户端14(例如电脑或手机)进行查看,以明确不匹配的原因。
在另一实施例中,该程序还包括注解模块:
用于为所述基本信息形成的每组代码添加预设注解。
在本实施例中,为了提高该程序对数据(包括客户端14上传的第一数据的基本信息)进行处理的速度,因此该程序通过注解模块为基本信息形成的每组代码添加预设注解。其中,注解里定义了基本信息对应的第一数据的名称、第一数据的数据范围及第一数据的数据值,通过添加注解,使该程序能够对所述基本信息按照注解里定义的内容进行处理,加快程序对代码的处理速度,同时利于对代码的维护和扩展。
此外,本发明还提供一种基于OGNL表达式语言的数据分发方法。参照图3所示,为本发明基于OGNL表达式语言的数据分发方法的实施例的方法流程示意图。电子装置1的处理器12执行存储器11中存储的基于OGNL表达式语言的数据分发程序10时实现基于OGNL表达式语言的数据分发方法的如下步骤:
S110,根据第一数据的属性信息及预先确定的匹配条件生成规则生成匹配条件。
在本实施例中,电子装置1从数据库中获取第一数据的属性信息,基于所述属性信息根据预先确定的匹配条件生成规则生成匹配条件并存储于数据库,其中,所述属性信息包括:第一数据的名称,第一数据的数据范围、第一数据的数据值,及多个第一数据之间允许的操作类型。
在本实施例中,以保险单(简称保单)为例具体说明,所述第一数据可以是商业险保险、三责险(第三方责任险)保费等。在其他实施例中,所述第一数据还可以是承保机构、险种、是否投保车损险、是否投保车上人员险、投保方连续投保年数、续保评分、承保车辆年限、品牌筛选、网点筛选等项目相关的数据。
所述第一数据的数据范围通过以下关系式进行设置:>(大于)、>=(大于或等于)、<(小于)、<=(小于或等于)、==(等于)、!=(不等于)、contains(包含)、not contains(不包含)。
所述第一数据的数据值为第一数据的数值或文本内容,例如某商业险保费金额为10万,则其数据值为10万。
所述操作类型包括:&&(与)和||(或)等。
其中,所述匹配条件生成规则包括:
根据所述第一数据的数据范围、名称及第一数据值生成第一条件;及
根据多个所述第一条件及所述操作类型生成第二条件作为所述第一数据的匹配条件。
例如,有两个第一条件分别为:1000<=商业险保额<=5000及100<=三责险保费<=500,则生成的第二条件(即匹配条件)为:1000<=商业险保额<=5000&&100<=三责险保费<=500。
所述匹配条件生成后存储于数据库可长期使用,后期还能够根据业务的需求增加或减少第一条件的数量,并通过所述条件生成规则生成新的匹配条件。
S120,判断客户端14上传的第一数据(商业险保险、三责险、保费等)的基本信息是否满足匹配条件,根据匹配结果决定是否发放第二数据(例如,卡券、礼包等)。
在本实施例中,电子装置1接收客户端14发出的数据发放请求,解析所述数据发放请求中携带的第一数据的基本信息(基本信息包括第一数据的名称及第一数据值),基于OGNL表达式语言对所述基本信息及匹配条件进行匹配分析,判断所述基本信息是否满足所述匹配条件,根据匹配结果判断是否发放与所述第一数据对应的第二数据。
其中,所述基本信息存储于所述电子装置1的信息队列(“消息队列”是在消息的传输过程中保存数据消息的容器,用于跨系统之间的数据消息传递)。
所述基于OGNL表达式语言对所述基本信息及匹配条件进行匹配分析包括:
将所述基本信息存储在基于OGNL创建的上下文环境(context)的根对象(root)中;
利用OGNL表达式语言对所述匹配条件进行描述生成所述匹配条件的表达式(expression);及
根据所述表达式(expression)对所述存储于根对象(root)中的基本信息进行遍历查询,判断所述基本信息与表达式匹配是否一致,根据匹配结果输出相应的第二数据(例如,卡券、礼包等)发放结果。
OGNL是Object-Graph Navigation Language的缩写,它是一种功能强大的表达式语言,通过它简单一致的表达式语法,可以存取对象的任意属性,调用对象的方法,遍历整个对象的结构图,实现字段类型转化等功能。它使用相同的表达式去存取对象的属性。OGNL在许多的地方都有应用,例如:
1.作为GUI元素(textfield,combobox等)到模型对象的绑定语言;
2.数据库表到Swing的TableModel的数据源语言;
3.Web组件和后台Model对象的绑定语言,如:WebOGNL,Tapestry,WebWork,WebObjects;
4.作为Jakarata Commons BeanUtils或者JSTL的表达式语言的一个更具表达力的替代语言。
另外,java中很多事件可以使用OGNL来完成,例如:列表映射和选择。对于开发责来说,使用OGNL可以用简洁的语法来完成对java对象的导航。通常来说:通过一个“路径”来完成对象信息的导航,这个“路径”可以是到java bean的某个属性,或者集合中的某个索引的对象等,而不是直接使用get或者set方法来完成。
基于OGNL语法的简洁性、使用的方便性,以及在性能方面的优势,通过使用OGNL的过滤和投影集合功能,将客户端14上传的基本信息设置到上下文环境(context)的根对象(root)中,匹配条件作为表达式(expression),通过调用Ognl.getValue(formula,context,context.getRoot())即可得到匹配结果(是否发放第二数据)。
S130,当判断客户端14上传的第一数据(商业险保险、三责险、保费等)的基本信息与匹配条件的匹配结果一致时,将第二数据(例如,卡券、礼包)发放给客户端14。
在本实施例中,电子装置1分析客户端14上传的第一数据(商业险保险、三责险、保费等)的基本信息与匹配条件的匹配结果后,若基本信息与OGNL表达式的匹配结果一致,则允许将第二数据(例如,卡券、礼包)发放给所述客户端14,否则,不允许发放第二数据。
在另一实施例中,该方法还包括以下步骤:
当判断基本信息与匹配条件匹配结果不一致时,自动生成记录信息并反馈给客户端14。
在本实施例中,为了能够让用户得知基本信息与匹配条件不匹配的原因,因此当基本信息与匹配条件的匹配结果不一致时,电子装置1自动生成记录信息并反馈至保险机构的相关工作人员的客户端14(例如电脑或手机),或保险客户的客户端14(例如电脑或手机)进行查看,以明确不匹配的原因。
在另一实施例中,该方法还包括以下步骤:
为所述基本信息形成的每组代码添加预设注解。
在本实施例中,电子装置1为基本信息形成的每组代码添加预设注解,以提高该程序对数据(包括客户端14上传的第一数据的基本信息)进行处理的速度。其中,注解里定义了基本信息对应的第一数据的名称、第一数据的数据范围及第一数据的数据值,通过添加注解,使该程序能够对所述基本信息按照注解里定义的内容进行处理,加快程序对代码的处理速度,同时利于对代码的维护和扩展。
此外,本发明实施例还提出一种计算机可读存储介质,计算机可读存储介质可以是硬盘、多媒体卡、SD卡、闪存卡、SMC、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、便携式紧致盘只读存储器(CD-ROM)、USB存储器等中的任意一种或者几种的任意组合。计算机可读存储介质中包括基于OGNL表达式语言的数据分发程序10,本发明之计算机可读存储介质的具体实施方式与上述基于OGNL表达式语言的数据分发方法以及电子装置1的具体实施方式大致相同,在此不再赘述。
需要说明的是,上述本发明实施例序日仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
上述本发明实施例序日仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术本实施例本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,电子装置,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (6)
1.一种基于OGNL 表达式语言的数据分发方法,应用于电子装置,其特征在于,该方法包括:
建立步骤:从数据库中获取第一数据的属性信息,基于所述属性信息根据预先确定的匹配条件生成规则生成匹配条件并存储于数据库,其中,所述属性信息包括:第一数据的名称,第一数据的数据范围、第一数据的数据值,及多个第一数据之间允许的操作类型;
获取步骤:接收客户端发出的数据发放请求,解析所述数据发放请求中携带的第一数据的基本信息,基于OGNL 表达式语言对所述基本信息及匹配条件进行匹配分析,判断所述基本信息是否满足所述匹配条件,根据匹配结果判断是否发放与所述第一数据对应的第二数据;及
发放步骤:分析所述匹配结果,若所述基本信息与所述匹配条件的匹配结果一致,则允许将第二数据发放给所述客户端;
其中,所述匹配条件生成规则包括:根据所述第一数据的数据范围、名称及第一数据值生成第一条件;及根据多个所述第一条件及所述操作类型生成第二条件作为所述第一数据的匹配条件;
所述基于OGNL 表达式语言对所述基本信息及匹配条件进行匹配分析包括:将所述基本信息存储于基于OGNL创建的上下文环境的根对象;利用OGNL表达式语言对所述匹配条件进行描述生成所述匹配条件的表达式;及根据所述表达式对存储于根对象中的基本信息进行遍历查询,判断所述基本信息与表达式匹配是否一致,根据匹配结果输出相应的第二数据发放结果。
2.如权利要求1所述的基于OGNL 表达式语言的数据分发方法,其特征在于,该方法还包括反馈步骤:
若所述基本信息与匹配条件匹配结果不一致,则自动生成记录信息并反馈给所述客户端,其中,所述记录信息包括所述基本信息中与所述匹配条件不匹配的第一数据的名称及/或第一数据的数据值。
3.如权利要求1或2所述的基于OGNL表达式语言的数据分发方法,其特征在于,该方法还包括注解步骤:
为所述基本信息形成的每组代码添加预设注解,所述注解包括对应的第一数据的名称、第一数据的数据范围及第一数据的数据值。
4.一种电子装置,其特征在于,所述电子装置包括存储器和处理器,所述存储器上存储有基于OGNL 表达式语言的数据分发程序,所述基于OGNL表达式语言的数据分发程序被所述处理器执行时实现如下步骤:
建立步骤:从数据库中获取第一数据的属性信息,基于所述属性信息根据预先确定的匹配条件生成规则生成匹配条件并存储于数据库,其中,所述属性信息包括:第一数据的名称,第一数据的数据范围、第一数据的数据值,及多个第一数据之间允许的操作类型;
获取步骤:接收客户端发出的数据发放请求,解析所述数据发放请求中携带的第一数据的基本信息,基于OGNL表达式语言对所述基本信息及匹配条件进行匹配分析,判断所述基本信息是否满足所述匹配条件,根据匹配结果判断是否发放与所述第一数据对应的第二数据;及
发放步骤:分析所述匹配结果,若所述基本信息与所述匹配条件的匹配结果一致,则允许将第二数据发放给所述客户端;
其中,所述匹配条件生成规则包括:根据所述第一数据的数据范围、名称及第一数据值生成第一条件;及根据多个所述第一条件及所述操作类型生成第二条件作为所述第一数据的匹配条件;
所述基于OGNL 表达式语言对所述基本信息及匹配条件进行匹配分析包括:将所述基本信息存储于基于OGNL创建的上下文环境的根对象;利用OGNL表达式语言对所述匹配条件进行描述生成所述匹配条件的表达式;及根据所述表达式对存储于根对象中的基本信息进行遍历查询,判断所述基本信息与表达式匹配是否一致,根据匹配结果输出相应的第二数据发放结果。
5.如权利要求4所述的电子装置,其特征在于,该电子装置还执行以下步骤:
若所述基本信息与匹配条件匹配结果不一致,则自动生成记录信息并反馈给所述客户端,其中,所述记录信息包括所述基本信息中与所述匹配条件不匹配的第一数据的名称及/或第一数据的数据值。
6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有基于OGNL 表达式语言的数据分发程序,所述基于OGNL 表达式语言的数据分发程序可被一个或者多个处理器执行,以实现如权利要求1-3中任一项所述的基于OGNL 表达式语言的数据分发方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910842823.1A CN110674366B (zh) | 2019-09-06 | 2019-09-06 | 基于ognl表达式语言的数据分发方法、电子装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910842823.1A CN110674366B (zh) | 2019-09-06 | 2019-09-06 | 基于ognl表达式语言的数据分发方法、电子装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110674366A CN110674366A (zh) | 2020-01-10 |
CN110674366B true CN110674366B (zh) | 2023-07-07 |
Family
ID=69076164
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910842823.1A Active CN110674366B (zh) | 2019-09-06 | 2019-09-06 | 基于ognl表达式语言的数据分发方法、电子装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110674366B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115757043B (zh) * | 2022-11-29 | 2023-07-21 | 广发银行股份有限公司 | 一种日志数据记录方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102930054A (zh) * | 2012-11-19 | 2013-02-13 | 北京奇虎科技有限公司 | 数据搜索方法及系统 |
CN105933295A (zh) * | 2016-04-12 | 2016-09-07 | 北京红马传媒文化发展有限公司 | 一种积分发放的方法、系统和装置 |
WO2018201667A1 (zh) * | 2017-05-05 | 2018-11-08 | 平安科技(深圳)有限公司 | 数据分发系统、计算机可读存储介质及方法 |
CN110191428A (zh) * | 2019-05-27 | 2019-08-30 | 北京鸿联九五信息产业有限公司 | 一种基于智能云平台的数据分配方法 |
-
2019
- 2019-09-06 CN CN201910842823.1A patent/CN110674366B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102930054A (zh) * | 2012-11-19 | 2013-02-13 | 北京奇虎科技有限公司 | 数据搜索方法及系统 |
CN105933295A (zh) * | 2016-04-12 | 2016-09-07 | 北京红马传媒文化发展有限公司 | 一种积分发放的方法、系统和装置 |
WO2018201667A1 (zh) * | 2017-05-05 | 2018-11-08 | 平安科技(深圳)有限公司 | 数据分发系统、计算机可读存储介质及方法 |
CN110191428A (zh) * | 2019-05-27 | 2019-08-30 | 北京鸿联九五信息产业有限公司 | 一种基于智能云平台的数据分配方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110674366A (zh) | 2020-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2846443C (en) | Mobile solution for signing and retaining third-party documents | |
US7533343B2 (en) | Web page to cellular phone—contact information messaging system | |
US8175623B2 (en) | Platform for managing mobile domains and keyword-activated applications | |
CN103854168A (zh) | 异构流程待办集中处理方法及处理装置 | |
US8972402B1 (en) | Ranking users and posts in social networking services | |
US20100287054A1 (en) | System And Method For Integrating An Ad Banner With A Calling Application | |
US20070079128A1 (en) | Electronic signature system and method | |
US20080307058A1 (en) | Message handling for user interfaces | |
US9679249B2 (en) | Dynamic risk evaluation for proposed information technology projects | |
US20110320286A1 (en) | System And Method For Integrating An Ad Banner With A Calling Application | |
CN101202694A (zh) | 用于在普及性设备上提供web服务的方法和系统 | |
CN111082976B (zh) | 一种支持etl任务调度可视化的方法 | |
CN112822286B (zh) | 消息的推送方法及装置 | |
CN110674366B (zh) | 基于ognl表达式语言的数据分发方法、电子装置及存储介质 | |
US20130204964A1 (en) | Retrieving availability information from published calendars | |
CN106357713A (zh) | 实现远程过程调用的方法和客户端装置以及服务器装置 | |
US10581783B2 (en) | Method and system for creating dynamic email signatures | |
CN111400310B (zh) | 基于审批链配置的数据监控方法、服务器及存储介质 | |
JP6633238B1 (ja) | 求人管理システム、求人管理装置、およびプログラム | |
US20100138401A1 (en) | Communications system | |
US10440134B1 (en) | Systems and methods for compliance enforcement in internet-based social networks | |
CN115170087A (zh) | 任务数据的处理方法、装置和计算机可读存储介质 | |
JP6072846B2 (ja) | 団体保険のスマホ手続きシステム | |
US20170134317A1 (en) | Electronic messaging system involving adaptive content | |
CN110266596B (zh) | 消息处理方法、装置、设备及计算机可读存储介质 |
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 |