XX银行手机银行企业版软件框架搭建
1.XX银行企业版逻辑结构
通过对XX银行手机银行企业版的需求分析,XX银行手机银行分为手机客户端,柜面系统,后台管理系统等模块。
我们形成如下图所示的软件部分的逻辑结构。
2.系统整体架构
根据逻辑结构,我们将系统分为手机端展现,服务器端与管理界面两个部分。
手机端实现数据在手机端的显示,提供用户可行性操作通过http协议与服务端进行连接,完成用户多做交易。
管理界面提供管理员使用,用于设置手机银行企业版部分参数设定,查询错误信息,以及系统启动的服务,等功能。
3.使用技术
1.手机端开发基于android
2.1为基础进行程序开发。
2.手机端与手机后台服务器间现阶段采用http传输协议,
在程序基本框架搭建完成,开始功能开发后采用https+ssl传输协议。
3.手机后台服务与后台管理系统采用struts2+spring3+hibernate3框架。
4.手机后台服务与MBSI通讯方式采用socket方式通讯。
5.数据库采用oracle数据库。
4.技术选择分析
1.手机端技术:
android2.1,因为手机银行企业版的前期规划为主要是在android的平板电脑上进行使用,选择android2.1为了系统的可用性,可以覆盖大多数android系统的平板电脑。
2.手机端与服务端通讯:
采取https+ssl传输协议是因为安全传输,因为从手机端到服务端传输的数据中可能会包含包括用户银行账户、密码等重要信息,因此我们必须保障通讯过程中的数据安全。
3.手机后台服务与后台管理系统:
采用主流ssh框架,便于开发和修改,页面展现使用EXT方便快捷的展现用户所需的资料。
4.手机后台服务与其他服务通讯
选择socket,因为其通讯效率高,数据量比较大时出现丢失数据的情况比较少,并且使用比较简单。
5.框架基础实现
手机端到服务端:
1.手机使用https协议,设定连接服务端ip将数据以字符串的形式传输
给服务端
2.使用action中的post方法进行接收,并判断数据有效性
3.根据service将交易分发到不同的交易中进行处理
4.设定返回字符串的编码格式,并返回交易结果。
服务端到MBSI:
服务端接受MBSI发出的请求
1.使用FixedEndCharacterServer.Java接收到请求报文
2.实际业务处理器BusinessProcesser.java通过sessionOpened方法,打开session,CPBBusinessProcesser.java类继承BusinessProcesser
3.调用CPBBusinessProcesser.java的方法,并对父类中的doBusiness 方法进行重写
4. doBusiness方法对所接受的报文进行操作,对报文的有效性进行判断,并根据报文中的service_id将交易发送到以service_id为类名的交易服务中,并且返回交易结果。
发送请求给MBSI
1.通过Spring的注入关系,将据配置的端口号读取服务端的HOST和PORT 以及编码格式注入到FixedEndCharacterClient之中
2.调用FixedEndCharacterClient.java中的send方法
3.检查报文合法性,报文通过sock.getOutputStream()的方法取得连接
4.将数据写入通道中,发送至服务端。