一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

支付报文页面生成方法及装置与流程

2022-11-19 12:17:59 来源:中国专利 TAG:
1.本发明涉及网络安全
技术领域
:,尤其涉及支付报文页面生成方法及装置。
背景技术
::2.在报文页面生成机制中,报文页面的生成可以分为以下四个阶段:3.1、设计阶段:添加或修改messagescreensets(消息屏幕设置)相关的数据库表,配置不同类型的报文页面和对应页面元素的静态数据;4.2、生成阶段:根据数据库表生成messagescreensets的jsp(java服务器页面,javaserverpages)页面;5.jsp是由sunmicrosystems公司主导创建的一种动态网页技术标准。jsp部署于网络服务器上,可以响应客户端发送的请求,并根据请求内容动态地生成html(超文本标记语言,hypertextmarkuplanguage)、xml(可扩展标记语言,extensiblemarkuplanguage)或其他格式文档的web网页,然后返回给请求者。jsp技术以java语言作为脚本语言,为用户的http(超文本传输协议,hypertexttransferprotocol)请求提供服务,并能与服务器上的其它java程序共同处理复杂的业务需求。6.3、渲染阶段:将jsp页面渲染成html页面,完成tag(标签)的解析;7.4、客户端执行阶段:客户端页面操作触发前后台事件的过程。8.gpp系统(globalpayplus,全球统一支付平台系统)用于构建统一的支付清算平台,连接海外各个本地清算系统,为客户提供多渠道、更快捷的支付服务。在生成gpp支付报文页面时,每笔交易报文进入全球统一支付系统第一次被打开时,进入渲染阶段。首先,调用messagescreensetselection(消息屏幕设置选择)规则,根据报文信息确定当前报文展示的jsp页面。然后,调用messagefieldssetsselection(消息字段设置选择)规则确定页面元素的显示状态,从而完成展示的html页面的生成。9.现有技术的不足在于:现有的支付报文页面生成方案,不能满足gpp系统中各地区对各种类型报文的展示有个性化需求的要求。技术实现要素:10.本发明实施例提供一种支付报文页面生成方法,用以满足gpp系统中各地区对各种类型报文的展示有个性化需求的要求,该方法包括:11.当在客户端打开支付报文时,获取jsp文件,其中,所述jsp文件是在gpp系统启动时根据数据库表的配置生成的消息屏幕设置的jsp文件;12.通过规则引擎,在jsp页面加载页面元素所需信息,生成对应的html页面,其中,所述规则引擎是根据用户提供的报文展示需求配置的;13.将生成的html页面返回客户端。14.本发明实施例还提供一种支付报文页面生成装置,用以满足gpp系统中各地区对各种类型报文的展示有个性化需求的要求,该装置包括:15.文件模块,用于当在客户端打开支付报文时,获取jsp文件,其中,所述jsp文件是在gpp系统启动时根据数据库表的配置生成的消息屏幕设置的jsp文件;16.规则模块,用于通过规则引擎,在jsp页面加载页面元素所需信息,生成对应的html页面,其中,所述规则引擎是根据用户提供的报文展示需求配置的;17.页面模块,用于将生成的html页面返回客户端。18.本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述支付报文页面生成方法。19.本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述支付报文页面生成方法。20.本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现上述支付报文页面生成方法。21.本发明实施例中,与现有技术中通过硬编码的方式,将页面展示的元素、状态和条件等业务场景写在代码中,而且通常需要对每一种场景的报文设计一个jsp页面的技术方案相比,首先在gpp系统启动时根据数据库表的配置生成的消息屏幕设置的jsp文件;在客户端打开支付报文时,再去获取jsp文件,并通过用户提供的报文展示需求配置的规则引擎,在jsp页面加载页面元素所需信息,生成对应的html页面;由于在页面生成过程中,先是基于数据库表生成jsp文件,然后在渲染阶段再通过规则引擎的配置来适应客户的需求,而在应对报文页面的需求变化时,通过前端界面配置即可实现新增、修改报文页面展示的规则条件和规则执行,因而可以满足支付系统支持复杂多样化支付交易页面的要求。22.进一步的,由于可以通过修改配置来实现,不需开发人员修改代码,成本较低,应对需求变化的灵活度较高,错误发生率较低。附图说明23.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:24.图1为本发明实施例中支付报文页面生成方法实施流程示意图;25.图2为本发明实施例中支付报文页面生成架构示意图;26.图3为本发明实施例中支付报文页面生成实施流程示意图;27.图4为本发明实施例中支付报文页面生成装置结构示意图;28.图5为本发明实施例中计算机设备示意图。具体实施方式29.为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。30.发明人在发明过程中注意到:31.随着业务发展,越来越多的海外分行使用gpp系统对接本地清算系统,但由于各个海外分行所参与的清算系统标准各不相同,对参加行的要求也不一样,同时,各海外分行业务发展程度、对业务的处理要求也不尽相同,因此各分行对报文页面的展示需求既有一致的地方也会有个性化的需求。32.在javaweb应用系统中,不同的报文页面大多数是通过硬编码的方式,将页面展示的元素、状态和条件等业务场景写在代码中,而且通常需要对每一种场景的报文设计一个jsp页面。33.通过硬编码实现的方式,由于gpp系统是针对全球范围内的一体化实时支付系统,而且世界各地的实时清算系统规范都不尽相同,如果通过这种方式,需要将每种同一报文类型不同业务场景编写成一个jsp页面,这样下来,整个代码会非常繁杂,jsp页面之间的重复性很高,而且难以维护。此外,在实际生产中,如果遇到当地业务应急需要变更报文页面展示需求的话,需要修改代码才行,这将导致无法灵活满足应急需求,这种报文页面的展示方法灵活度和复用度都很低。34.基于此,本发明实施例提供的技术方案中,提出了一种全球统一支付系统中的报文页面的生成方案,方案结合javaweb的系统架构,建立一套基于数据库和规则配置的机制,通过配置的方式而不需要修改代码,使系统能够灵活地实现各地区不同报文页面的展示需求,并且在应对报文处理变化时,也只需修改配置。本方案成本较低,应对需求变化的灵活度较高,错误发生率较低,且减少了维护成本。35.下面结合实施例进行说明。36.图1为支付报文页面生成方法实施流程示意图,如图1所示,可以包括:37.步骤101、当在客户端打开支付报文时,获取jsp文件,其中,所述jsp文件是在gpp系统启动时根据数据库表的配置生成的消息屏幕设置的jsp文件;38.步骤102、通过规则引擎,在jsp页面加载页面元素所需信息,生成对应的html页面,其中,所述规则引擎是根据用户提供的报文展示需求配置的;39.步骤103、将生成的html页面返回客户端。40.下面先对实施例中将会涉及到的技术特征进行简要的统一说明。41.messagescreenset(消息屏幕设置):一些页面元素的静态集合,它们构成了报文的展示页面。不同类型的报文对应不同的messagescreenset。42.messagefield(消息字段):页面元素。43.规则引擎:在全球统一支付平台系统中,为实现动态规则功能的后台代码实现,主要基于java语言和qlexpress动态脚本引擎解析工具。44.qlexpress是轻量级的类java动态脚本引擎解析工具,作为一个嵌入式规则引擎在业务系统中广泛使用。除了支持标准的java语法,还可以支持自定义操作符号、操作符号重载、函数定义、宏定义、数据延迟加载、表达式上下文等。具有高性能、高并发、线程安全等方面的优点,适用于分布式系统。gpp系统结合动态脚本引擎解析工具qlexpress和java技术,支持界面配置规则保存后,后台自动生成可执行的java语言。45.jsp:一种动态网页开发技术,主要用于实现javaweb应用程序的用户界面部分。46.本方案结合现有系统架构,通过配置的方式而不需要修改代码,使gpp系统能够灵活地实现各地区不同的报文展示需求;通过建立一套基于数据库和规则配置的方案,从而在应对报文页面的需求变化时,可以通过修改配置来实现,而不需开发人员修改代码,成本较低,应对需求变化的灵活度较高,错误发生率较低。47.具体的,通过gpp数据库配置静态数据,为用户提供了一系列定义好的messagescreensets。同时可以通过messagescreensetselection规则设置当前报文展示的screenset(屏幕设置),控制报文显示的内容,并可以通过messagefieldssetsselection规则动态设置页面元素的状态。由于不同的报文类型场次不同,页面上展示的信息也不同,gpp利用规则和静态数据,实现根据当前报文信息动态展示页面。48.图2为支付报文页面生成架构示意图,如图2所示,至少一个可以实现的功能架构可以包括:jsp生成模块和jsp渲染模块。49.jsp生成模块:主要在系统启动时调用,依赖设计阶段数据库表的配置,用于生成所有的jsp文件。50.jsp渲染模块:主要在客户端打开页面时调用,根据规则配置,动态加载页面元素所需信息,用于生成对应的html页面。51.下面从支付报文的实施阶段的角度来进行说明。52.1、设计阶段:53.实施中,数据库表是根据不同银行分行的需求,针对不同的报文类型,配置的对应messagescreensets和messagefields的数据库表,用以支持需要展示的报文类型及报文页面元素。54.具体的,根据银行的不同分行的需求,针对不同报文类型,配置对应的messagescreensets和messagefields等数据库表,以支持需要展示的所有报文类型及其页面元素。55.2、生成阶段:56.实施中,还可以进一步包括:57.在gpp系统启动时根据数据库表的配置生成后将jsp文件存储在应用服务器的指定路径下。58.具体的,在gpp系统启动时,根据数据库表配置,生成messagescreensets的jsp页面,并将所有的jsp文件存放在应用服务器的指定路径下。59.3、渲染阶段:60.当在客户端打开一笔报文时,服务器端会将jsp文件渲染为html文件,然后返回客户端。61.渲染的过程首先是根据静态数据表messagefields等定义,加载所有页面元素的初始信息,然后根据tags,动态地加载页面元素需要的信息。同时,根据不同的业务场景,灵活配置messagescreensetselection规则和messagefieldssetsselection规则条件和规则action(执行),以支持不同场景下页面元素的不同展示方式,如隐藏部分页面元素、设值部分页面元素为必填项等。报文页面打开时,根据命中的规则,则生成不同的html页面,并展示给用户;62.4、客户端执行阶段:63.客户端页面操作触发前后台事件。64.下面以实例进行说明。65.例中,在支付系统启动时,根据数据库配置的静态数据,动态生成不同类型报文对应的jsp页面。66.在支付系统打开报文时,执行messagescreensetselection和messagefieldssetsselection规则,根据规则条件和action,动态选择使用的jsp文件,并根据业务场景,渲染出不同的页面元素状态。67.也即,实施中,通过规则引擎,在jsp页面加载页面元素所需信息,生成html页面,包括:68.执行messagescreensetselection和messagefieldssetsselection规则,根据规则条件和规则执行,选择使用的jsp文件后,根据业务场景,渲染出相应的页面元素状态,生成html页面。69.图3为支付报文页面生成实施流程示意图,如图3所示,可以包括:70.步骤301、根据报文标准规范,数据库配置报文页面相关数据库表。71.步骤302、系统启动时,根据数据库静态数据配置,生成对应的jsp页面。72.步骤303、根据用户需求,页面配置messagescreensetselection和messagefieldssetsselection的规则条件和规则执行;73.步骤304、页面保存规则后,后台规则引擎生成可执行的java语句,并保存在数据库和对应缓存中;74.也即,实施中,还可以进一步包括:75.根据用户提供的报文展示需求配置规则引擎的规则条件和规则执行后,生成可执行的java语句,并保存在数据库对应的缓存中。76.步骤305、打开报文,命中规则后,选择对应的jsp文件,并在渲染过程中根据页面元素状态,生成html页面,并返回给客户端展示。77.具体的,系统界面打开一笔报文,先后命中messagescreensetselection和messagefieldssetsselection规则后,根据选择的messagescreenset找到对应的jsp文件,并在渲染过程中根据fieldssetid对应的页面元素状态,生成html页面,并返回给客户端展示。78.也即,实施中,根据业务场景,渲染出相应的页面元素状态,生成html页面,包括:79.选择使用的jsp文件后,在渲染过程中根据fieldssetid对应的页面元素状态,生成html页面。80.一、数据库表的设计。81.1、message_screen_sets表的设计:82.该表中存储了gpp中所使用的所有的screensetid(标识),一般情况下,不同的报文类型都有自己单独的screensetid。其中关键字段为:83.id:messagescreensetid。84.parent_id(父标识):当前screenset的父screensetid,screenset是可以继承的,如果没有parent,那么值为null(空)。85.description(描述):当前screenset的描述。86.2、message_fields表的设计:87.该表记录了所有的页面元素(不区分screenset),包括了当前元素在页面上的展示状态、是否必填、元素类型、展示位置、展示样式等信息。其中关键字段为:88.fields_group_id(字段组标识):逻辑字段所在组,组指的是页面上元素所属的table(表)或panel(面板)。89.field_id(字段标识):字段id,fields_group_id field_id定义了页面元素的id。因此,同一个逻辑字段可以出现在不同的组。90.state(状态):标识该元素在页面上的展示状态。91.mandatory:是否必填。92.controltype(控制类型):元素的展现形式,如button(按钮)、label(标签)、input(输入)、tab(选项卡)、container(容器)等。93.format_style:元素格式,比如只能填写数字、字母或只能大写等。94.col_pos row_pos:如果元素定义在一个container,并且这个container是一个htmltable,则这两列指明了元素在该table的位置。95.grid_cols grid_rows:只对container有效,指明table的大小。96.3、message_fields_grp_properties(消息字段grp属性)表的设计。97.该表记录了每一个container元素,定义了每个screenset中所有节点的关联关系,该表不包含具体元素的信息,只记录所有的container。其实现是通过递归的形式,一直找到树根messagescreenset。其中关键字段为:98.screen_set_id:screensetid,与message_screen_sets中的id一致。99.state:与message_fields一致。100.fields_group_id field_id:两个字段的组合定义了一个group的id,该形式与message_fields一致。101.col_pos row_pos:与message_fields一致,定义该group在table中的位置。对于group的元素,在message_fields一般都不会定义col_pos row_pos,而是定义grid_cols grid_rows。102.4、message_fields_setting表的设计。103.该表中主要记录了messagefieldssetsselection规则的actions,规则action对应message_fields_setting表中的fields_set_id。如果规则命中,则会根据action对应的id,设置元素的状态,覆盖message_fields表中的初始state。其中关键字段为:104.fields_set_id:108rule的action。105.field_logical_id:字段id。106.fields_group_id:字段所在的group。107.state:该元素的状态。108.mandatory:该元素是否为必填项。109.二、jsp页面的生成。110.jsp文件是在gppappserver(gpp应用服务)启动的过程中,根据messagescreenset相关数据库表生成的。主要如下:111.执行数据库查询的sql,获取页面元素的结果集;112.对结果集中的每条记录循环处理,将当前messagescreenset的messagefields存放到context(上下文)中;113.获取jsp文件的存放路径;114.循环处理context中的每个container,对于每个container调用save(保存)方法,写入对应的jsp文件。115.三、规则的设计。116.messagescreenset相关系统规则主要用于选择需要展示的messagescreenset以及页面元素的状态。通过定义规则条件,可以灵活区分不同的业务场景。通过定义规则action,可以决定当前场景下页面的展示内容和形式。117.1)messagescreensetselectionrule,该规则用于为当前报文动态选择screenset。规则条件表示根据用户提供的需求,定义符合哪些条件的报文使用同一种报文页面打开。规则的action是messagescreensetid,定义在message_screen_sets。118.2)messagefieldssetsselectionrule,该规则用于动态设置页面元素的状态以及是否必输项。规则条件表示根据用户提供的需求,定义符合哪些条件的报文使用同一个元素状态集合。规则的action是fieldssetid,定义在message_fields_setting。119.对于以上两种规则,系统支持在前端界面进行配置,保存后后台直接生成qlexpress可以执行的java语句。同时,在渲染阶段根据规则执行的结果,最终生成不同的html页面。120.本发明实施例中还提供了一种支付报文页面生成装置,如下面的实施例所述。由于该装置解决问题的原理与支付报文页面生成方法相似,因此该装置的实施可以参见支付报文页面生成方法的实施,重复之处不再赘述。121.图4为支付报文页面生成装置结构示意图,如图4所示,可以包括:122.文件模块401,用于当在客户端打开支付报文时,获取jsp文件,其中,所述jsp文件是在gpp系统启动时根据数据库表的配置生成的消息屏幕设置的jsp文件;123.规则模块402,用于通过规则引擎,在jsp页面加载页面元素所需信息,生成对应的html页面,其中,所述规则引擎是根据用户提供的报文展示需求配置的;124.页面模块403,用于将生成的html页面返回客户端。125.实施中,文件模块进一步用于获取的jsp文件是根据数据库表生成的,其中,数据库表是根据不同银行分行的需求,针对不同的报文类型,配置的对应messagescreensets和messagefields的数据库表,用以支持需要展示的报文类型及报文页面元素。126.实施中,文件模块进一步用于在gpp系统启动时根据数据库表的配置生成后将jsp文件存储在应用服务器的指定路径下。127.实施中,规则模块进一步用于根据用户提供的报文展示需求配置规则引擎的规则条件和规则执行后,生成可执行的java语句,并保存在数据库对应的缓存中。128.实施中,规则模块进一步用于在通过规则引擎,在jsp页面加载页面元素所需信息,生成html页面时,包括:129.执行messagescreensetselection和messagefieldssetsselection规则,根据规则条件和规则执行,选择使用的jsp文件后,根据业务场景,渲染出相应的页面元素状态,生成html页面。130.实施中,规则模块进一步用于在根据业务场景,渲染出相应的页面元素状态,生成html页面时,包括:131.选择使用的jsp文件后,在渲染过程中根据fieldssetid对应的页面元素状态,生成html页面。132.在实施本发明实施例提供的技术方案时,可以按如下方式实施。133.图5为计算机设备示意图,如图5所示,计算机设备中包括:134.处理器500,用于读取存储器520中的程序,执行下列过程:135.当在客户端打开支付报文时,获取jsp文件,其中,所述jsp文件是在gpp系统启动时根据数据库表的配置生成的消息屏幕设置的jsp文件;136.通过规则引擎,在jsp页面加载页面元素所需信息,生成对应的html页面,其中,所述规则引擎是根据用户提供的报文展示需求配置的;137.将生成的html页面返回客户端;138.收发机510,用于在处理器500的控制下接收和发送数据。139.实施中,数据库表是根据不同银行分行的需求,针对不同的报文类型,配置的对应messagescreensets和messagefields的数据库表,用以支持需要展示的报文类型及报文页面元素。140.实施中,进一步包括:141.在gpp系统启动时根据数据库表的配置生成后将jsp文件存储在应用服务器的指定路径下。142.实施中,进一步包括:143.根据用户提供的报文展示需求配置规则引擎的规则条件和规则执行后,生成可执行的java语句,并保存在数据库对应的缓存中。144.实施中,通过规则引擎,在jsp页面加载页面元素所需信息,生成html页面,包括:145.执行messagescreensetselection和messagefieldssetsselection规则,根据规则条件和规则执行,选择使用的jsp文件后,根据业务场景,渲染出相应的页面元素状态,生成html页面。146.实施中,根据业务场景,渲染出相应的页面元素状态,生成html页面,包括:147.选择使用的jsp文件后,在渲染过程中根据fieldssetid对应的页面元素状态,生成html页面。148.其中,在图5中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器500代表的一个或多个处理器和存储器520代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机510可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元。处理器500负责管理总线架构和通常的处理,存储器520可以存储处理器500在执行操作时所使用的数据。149.本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述支付报文页面生成方法。150.本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现上述支付报文页面生成方法。151.本发明实施例提供的技术方案中,提供了灵活可配置的报文页面生成机制,设计统一的报文页面生成流程,可以灵活应对分行提出的页面展示需求,通过前端界面配置即可实现新增、修改报文页面展示的规则条件和规则执行,生成新的html页面,不需要修改和维护繁杂的代码。152.全球统一支付系统因而可以根据用户需求,在前端界面直接配置页面渲染的规则条件和规则执行,保存后后台直接生成可执行的java语句,并动态生成html文件,减少了代码编写的复杂性和风险性。系统还支持灵活修改规则条件和规则执行,并随时生效,而不需要修改代码。满足了支付系统支持复杂多样化支付交易页面的要求。153.本技术技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定,本技术获取的个人、客户和人群等相关的个人身份数据、操作数据、行为数据等多种类型的数据,均已获得授权。154.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。155.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。156.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。157.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。158.以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。当前第1页12当前第1页12
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献