论文部分内容阅读
本文主要是研究如何在基于J2EE平台下开发移动银行平台系统。本系统是在SMS短信银行平台的基础上,对原有需求进行重新分析与提炼,并通过调查相关的同类产品增加一些新的需求,从而形成了初步的移动银行平台需求。系统的开发采用了基于UML的面向对象系统分析与设计方法,遵循了RUP软件迭代式开发过程。在开发的需求分析阶段,主要是理解需求并根据需求形成用例。在开发的分析阶段,我们将系统在逻辑上分成五层,它们分别是客户层、表示层、业务逻辑层、数据访问层和EIS层。客户层包括四种客户端类型,即SMS手机客户端、WAP手机客户端、J2ME手机客户端和浏览器客户客户端。在表示层,对应于四种客户端有相应的表示层组件为其提供视图服务。系统的业务逻辑层主要是为四种表示层组件提供业务逻辑服务,当表示层需要业务逻辑相关的操作时,都是通过调用业务逻辑层的服务来实现的。数据访问层是为上层提供数据访问的一层,通过O/R映射,把对关系数据库的访问转换成对对象的操作。EIS层是指系统的关系数据库管理系统,系统中需要持久化的数据都存储在此数据库中。在分析与设计阶段,我们通过分析原有SMS短信银行系统的架构设计,研究J2EE蓝图的参考实现及Java社区中一些优秀的开源项目,最终确定了本系统的架构。在客户层,我们只需为J2ME手机客户端开发定制的客户端程序,其他客户端只需使用手机内置的功能即可。对于J2ME手机客户端的设计,我们参考了Sun的无线应用参考实现Smart Tickets,基于MIDP开发了客户端程序。在表示层,我们选用了Struts的MVC框架及标准的Servlet、JSP等技术,实现了命令模式、业务代理模式等。在业务逻辑层,我们将主要的业务逻辑都实现在无状态Session Beans中,通过实现Service Locator来方便JNDI查找资源(EJB、JDBC数据源等),通过实现Session Facade来封装数据访问层接口和为表示层提供方便统一的业务逻辑调用。在数据访问层,我们选用了Entity Beans作为O/R映射,只提供了本地接口调用。数据访问不通过Entity Beans直接进行,而是通过业务逻辑的Session Facade来访问,并且通过Value Object、Assembler等模式简化数据访问过程。系统的EIS层选用关系数据库管理系统Informix,Informix是银行内广泛使用的数据库管理系统之一。