基于JavaEE第三方电子商务支付平台的设计与实现
2021-08-18韩睿
韩 睿
(山西职业技术学院,山西 太原 030006)
1 电子商务第三方支付平台概述
近年来,随着计算机网络技术的飞速发展,电子商务作为新兴第三产业,发展也日趋成熟起来,并对人们的日常生活、购物、消费等行为产生了及其深刻的影响。其中广为人知的电商平台主要有境外的亚马逊、国内的淘宝、京东、拼多多等,随着这些电商平台被人们广泛的接受和应用,网上交易的安全支付问题也日益凸显,现今通过电商平台交易最为核心的技术问题就是如何保障用户的交易安全。第三方支付平台的主要目的就是为电子商务交易安全提供技术保障,例如支付宝就是典型的第三方支付平台。早期的支付宝并不是独立的支付平台,而是以淘宝为基础平台的嵌入式支付系统,之后在2004年才实现了独立的平台,经过了十几年的发展完善,支付宝已经不仅仅是一个单纯的支付平台,而是变成了一个多元化的金融服务平台[1]。继支付宝之后,微信、京东、百度、银联云闪付也都陆续推出了自己的支付平台。随着各类支付平台的应用推出,其架构的稳定性、兼容性改进也成了当前的研究热点,在此前提背景下,本文重点针对JavaEE开发框架的技术特点进行了深入研究,并尝试基于JavaEE框架设计与开发了一个第三方电子商务支付平台。
2 JavaEE技术
JavaEE提供了企业级应用软件开发的一套技术框架,核心思想是“分层而治”,将软件开发框架划分为顶层表示层、中间业务层与底层数据层三个层级[2]。其中表示层做为顶层应用,主要用于部署用户显示界面的各类功能,界面显示的主要开发技术即WEB页面开发;业务层是JavaEE框架的中间层,也是核心逻辑层,主要用于实现与数据处理相关的业务请求、响应等逻辑事务,以及与表示层、数据层之间的数据交互功能;底层数据层提供了底层数据源与数据的映射关系和数据库访问接口,为有效保障数据的安全性,底层数据库不能被外部直接访问,而是需要通过底层数据源的映射关系调用指定的数据库接口来实现数据访问的。各层之间相对功能独立,松耦合关联,易于各个层的独立维护与功能扩展。同时各层内采用“容器+组件”的结构模式,各类开发技术以组件的形式封装在容器之内,组件之间可灵活调用、共享,又可独立开发、升级迭代。JavaEE的框架设计理念决定了其在技术融合、平台兼容等方面都具有明显的技术优势,因此也逐步成为企业级应用软件开发的首选开发框架平台。
3 第三方电子商务支付平台的架构设计
第三方电子商务支付平台整体布局采用JavaEE 与B/S相结合的架构,如图1所示。
图1 基于JavaEE第三方电子商务支付平台设计架构
表示层采用了WEB页面开发技术,基于Struts-MVC分层设计容器+JSP、XML组件的设计架构。Struts容器的技术核心是WEBwork,WEBwork指的是通过控制器拦截方式接收和处理各类来自WEB的页面请求事件,结合MVC分层理念将表示层构建为视图(View)+控制器(Controller)+模型(Model)的三层架构模式。视图层采用JSP、XML实现页面显示功能,JSP内置组件可以大大简化页面编程代码,提高开发效率,XML标记语言使得页面设计语言更加规范,结构清晰,易于界面开发二次迭代;控制层决定了页面事件的请求接收与结果响应方式,主要通过Struts控制器实现上述功能,Struts在接收到页面事件请求后,将其封装为Action对象进行处理,并根据配置文件信息将结果转换为匹配的对象模型显示在页面当中;模型层做为表示层的底层控制,一方面向控制层提供事件模型的信息描述,另一方面实现表示层与业务层的通信控制。
业务层采用了轻量级的JavaEE开发框架—Spring框架,Spring的核心模块是Core容器,用于提供内置功能模块开发的规范标准和框架的基本功能;Contexe内置模块用于给出Spring框架上下文信息的基础配置文件,主要涉及邮件收发、信息校验和调度等上下文信息;AOP内置模块用于实现Spring框架内扩展封装组件功能的配置管理;DAO内置模块提供了JDBC层面可能出现的错误信息的处理方案,主要针对异构数据库所导致的异常错误,这会大大简化系统开发中错误信息处理的编程代码量;ORM内置模块为底层数据层的异构数据库接入、交互提供了框架式的解决方案,并通过内置的对象转化处理工具完成底层数据的对象转换;WEB模块用于给出与表示层WEB页面的相关应用程序的上下文配置信息,为业务层与表示层通信提供服务。最后基于session管理实现对Ibatis数据源的接口调用。
数据层采用Ibatis框架实现以SQL语句为核心的半自动式数据管理。首先通过XML文件对数据源进行简单描述,即将Spring中的对象式描述的数据类型映射为JDBC中的以SQL语句描述的数据类型。再通过Ibatis所提供的数据连接对象接口DAO(Data Access ObjectS)实现对底层数据库的连接访问,数据库访问的全部操作细节都被封装在DAO接口当中,既简化了JAVA应用的开发过程,又提高了数据访问的安全性。
4 电子商务第三方支付平台的功能实现
电子商务第三方支付平台主要包括六大功能模块,分别为:交易合作维护、终端商户管理、终端管理、风险监控、交易管理、系统管理。
交易合作维护模块,主要用于管理和维护平台合作方的相关信息,具体包括市场策略信息维护、市场策略信息查询、合作方信息采集、合作方信息查询、合作方利润分配规则设定五项子功能。该模块中所提到的合作方是指系统应用推广方,主要负责平台推广、商户信息采集和维护平台等工作。
终端商户管理模块,主要用于管理和维护应用平台服务的商户信息,具体包括商户信息维护、商户信息查询、清算规则设定三项子功能。该模块中所涉及的商户信息统一由合作方负责采集、审批和录入,对于审核不通过的商户具有修改提交的权限,同时为了保障系统信息的安全性,对商户信息的查询与修改采用权限分级制,对于敏感性的信息采用脱敏处理机制,例如商户的账号信息,将截取其中间6位数字以“*”代替。
终端管理模块,主要用于管理和维护平台终端设备信息,具体包括终端设备信息维护、终端设备信息查询、装机绑定管理三项子功能。设备信息的采集、录入工作由指定的设备管理人员完成,设备运行状态、维修等信息的采集由终端设备维护人员负责完成。
风险监控模块,主要用于管理和维护平台交易的风险信息,具体包括商户资格初审、商户信息终审、风险监控规则、风险事件处理四项子功能。商户资格初审主要用于审核商户提交的基本信息是否符合系统信息的录入规则、内容是否合法等。若通过初审,则会为商户信息匹配唯一的商户号,用于在数据库中唯一标识商户,并修改商户的信息审核状态为“等待终审”;若审核未通过,则需录入退回理由,并允许商户重新修改、提交信息。终审通过后,商户状态会标注为“正式商户”,并可开始使用平台所提供的支付服务。
交易管理模块,主要用于管理和维护平台交易信息,具体包括交易信息查询、交易信息统计、文件下载、报表下载四项子功能。该模块提供了多个维度下的交易信息统计,及报表生成,能够为商户提供个性化的数据分析依据。
系统管理模块,用于管理和维护系统基本信息,具体包括用户信息管理、访问权限管理、系统日志信息管理、系统基本设置四项子功能。
5 结论
随着电子商务产业的快速发展,第三方支付平台也得到了广泛应用,随之而来的系统兼容性、交易安全性等问题也成为技术开发人员亟待解决的问题。针对这一现状,本研究首先对企业级系统开发技术JavaEE进行了深入研究,并尝试基于JavaEE开发框架,采用“分层而治”的技术设计思路,开发与实现了一个电子商务第三方支付系统,有效提高了系统的稳定性与兼容性,以及系统的可维护性与易扩展性。