




已阅读5页,还剩36页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第36页辽宁科技大学毕业设计(论文)银行账户管理系统摘要银行账户是开展各项金融业务的基础,是一切金融交易的门槛,不论什么样的金融交易,只要通过银行,都表现为资金从一个账户到另一个账户的转移,都会在账户记录中留下痕迹。因此,必须加强银行账户系统建设,加大对账户资金流动的监控力度。经过分析,本文使用了基于WEB网络开发的思想,利用其提供的各种面向对象的开发工具,实现了管理员信息管理、用户信息修改、开户、销户、办卡、换卡、存款、取款、取款机信息管理、系统管理、系统维护、以及相关报表输出、打印等功能模块,并对各初始原型模块进行需求迭代,不断修正和改进,直到使系统符合银行账户管理的规定,满足银行相关人员日常使用的需要,达到操作过程中的直观、方便、实用、安全等要求。同时,该银行账户管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。其间,我们通过数据库管理系统实现了用户银行存取款信息表与取款机存取款信息表之间的连接,很方便的完成了用户查询的功能模块。总之,网上银行是一个开放的体系,是全球化的银行。网上银行利用因特网能够提供全球化的金融服务,可以快捷地进行不同语言文字之间的转换,为银行开拓国际市场创 造了条件。传统银行是通过设立分支机构开拓国际市场的,而网上银行只需借助因特网,便可以将其金融业务和市场延伸到全球的每个角落,把世界上每个公民都当 做自己的潜在客户去争取。网上银行无疑是金融运营方式的革命,它使得银行竞争突破国界变为全球性竞争。关键词 WEB网络;信息管理系统AbstractBank account is the basis of the financial business, is the threshold of all financial transactions, regardless of what kind of financial transactions, as long as through banks, have demonstrated for the funds from one account to another account of the transfer, will be left in the accounts record traces. Therefore, we must strengthen the system of bank accounts, account for more efforts to control capital flows.After analysis, the use of WEB based on the idea of network development, provided use of its object-oriented development tools, to achieve the information management administrator, modify user information, accounts, sales households do card, a replacement of permit, deposit, withdrawals, ATM information management, system management, system maintenance, as well as output statements, print and other functional modules, and the demand for the initial prototype module iterative, and constantly revised and improved, until the system in line with the provisions of the management of bank accounts, Bank staff to meet the needs of day-to-day use, to intuitive operation, convenient, practical, and security requirements.At the same time, the bank account management system is a typical management information system (MIS), including the development of the main background of the establishment and maintenance of database and application development front-end two-fold. For the former requirement to establish data consistency and integrity, and data security of a good library. For applications which require full-featured and easy to use and so on. During this period, the database management system, we achieved a user information table bank deposit and deposit with the teller machines of the connection between the information table, it is convenient to complete the function of the users query module.In short, Internet Banking is an open system, the Bank of globalization. Internet banking using the Internet to provide global financial services, can be quickly and easily between different languages of the conversion, to open up international markets for the banks to create the conditions.Tradition through the establishment of branch banks are opening up international markets, and online banking only with the Internet, they would be able to market its financial operations and extends to every corner of the world, every citizen of the world are potential customers as their own to fight for . Internet banking is the way the financial operations of the revolution, it allows banks to break through borders to global competition.Keywords WEB SERVICE;MIS目录摘要IAbstractII第1章 绪论11.1 设计思想11.2 课题研究的意义11.3 系统设计的目的21.4 开发和运行环境的选择21.5 计算机软件开发概述2第2章 基于WEB网络开发平台简介42.1 WEB网络的产生和发展42.2 MVC模型72.3 Struts框架82.4 Oracle数据库9第3章 银行账户管理系统需求分析113.1 银行账户信息化发展国内外现状需求113.2 功能需求123.3 可行性论证133.4 网络和系统安全需求13第4章 银行账户管理系统总体设计154.1 系统基本功能及目标154.2 系统的业务流程图164.3 主要功能模块设计164.4 数据库表的设计17第5章 银行账户管理系统详细设计195.1 登陆界面模块设计195.2 注册界面模块设计215.3 主菜单功能设计24第6章 银行账户管理系统的调试和评价266.1测试与结果266.2 评价28结论30致谢31参考文献32附录A33附录B35 第1章 绪论1.1 设计思想本系统为银行账户管理系统,是模拟银行账户的管理开发的。它借助当前先进的网络技术,为客户提供快速,便捷,安全,可靠的操作平台。系 统是一个由集中统一WEB访问出口模式、以国际互联网为介质、以为客户提供优质服务为主要目标的网上银行系统,提供针对企业和个人客户的信息服务、客户身 份识别、查询类业务、支付类业务等多种类的便捷、快速服务。系统着眼于建立一个功能完善,体现集中构建、集中管理、集中访问控制的策略,同时具有高度安全 性、高可靠性、高可扩展性的系统,并为下一步的发展奠定坚实的基础。 银行账户管理系统是一个基于网络的请求与应答形式的WEB的JAVA EE的企业级的应用与开发,它的核心设计思想是MVC模式,中央控制器(Controler)由Struts框架对请求与应答进行控制,并调用业务层(Model)的JAVA Bean进行业务的逻辑控制和处理,最后由控制器决定最后的显示转向(显示逻辑层主要由JSP)。1.2 课题研究的意义通过该银行账户管理系统使银行的账户管理工作系统化、规范化、自动化,从而达到提高账户管理效率的目的,使办公人员可以轻松快捷地完成对账户管理的任务。在经济方面为公司企业以及个人都带来很多的经济利益,不但省了很多时间而且带来很多物质利益,使我们切实体会到了网络给我们带来的种种好处,为社会的发展起到了很大的作用。全世界的人们能够即时的分享信息,带动全球的经济与发展。在科学方面,产生许多的新技术推动了科学的发展与进步,丰富了原来的科学体系,对各学科的发展都有非常大的推动作用。网络的发展是科学成果能够全球共享,进行科学成果共享与研究探讨。这对科学的进步有很大的发展空间。有网络应用发展起来的网络通信系统以及基于WEB的应用的发展对科学的发展更有不可估量的贡献。因次,这方面的发展还有很大的空间。1.3 系统设计的目的系统设计是整个计算机信息管理系统开发过程中最重要的技术环节,我们要在充分理解用户需求的基础上,用计算机来实现新系统的信息处理逻辑模型中规定的输入、输出及内部处理等多项功能,由不同模块来完成数据流程图中的各个加工,组织各种数据文件的存储,达到用户需求所规定的各项性能指标,并提出经济合理结构良好和高质量的解决新的计算机信息管理系统中各个需要处理的问题的解决方法的系统目标模型。为有利于及时掌握和监控银行账户的开立和使用情况,建立和完善账户管理系统,利用信息技术手段,提高管理成效,必须建立全国统一的银行账户管理系统。中国人民银行将统一开发和建立全国统一银行账户管理系统,系统将按照集中统一、分级管理的原则实施管理,其主要功能包括:信息审核、信息储存、信息查询、信息统计、信息监测、开户登记管理等及其他扩展或附加的功能。1.4 开发和运行环境的选择采用Java平台开发,并使用Oracle数据库管理数据。服务器是后台支持程序,使用的是tomcat6.0;客户端程序面向实际用户,它有必要的界面和按扭,向用户提供网络即时通信的功能。使用到的技术:Struts,JDBC,JSP,JavaScript运行环境:支持windows 2000/XP,linux,unix等操作系统数据库的选择:Oracle1.5 计算机软件开发概述银行账户管理系统的建立是一个复杂的计算机软件工程的实施过程。面向对象的程序设计方法的出现和广泛应用是计算机软件技术发展中的一个重大变革和飞跃,它的方法和技术日趋成熟,逐渐成为目前公认的主流程序设计方法。对象是现实世界中的实体在计算机中的抽象表示,是具有唯一对象名和固定对外接口的一组属性和操作的集合,它用来模拟组成现实世界问题的一个或一组因素。面向对象的程序结构是一个类的集合和各类之间以继承关系联系起来的结构,主程序中定义各对象并规定它们之间传递消息的规律。面向对象程序最主要的特征是各对象之间的消息传递和各类之间的继承关系。本系统是为了提高新公司自动化办公的水平、经过详细的调查分析初步制定了高新公司库存信息管理系统。库存的管理对于整个公司的业务流程来说也是个重要的环节,能否有效地反映出库存的实时数据直接影响了利益。但是现存的库存管理仍旧靠手工操作和纸质传递,这样不仅是平时的工作效率大大降低而且耗费大量的人力、物力和财力,出错也就在所难免了。人员间的信息传递由于通过手工帐或表单交流而显得内容不够丰富,信息传递的严重滞后使信息的沟通大大受阻。这使得员工们不得不在与库存的沟通上花费大量的时间和精力,既影响了整个工作流程的效率,同时又使高层决策人员不能及时掌握最新最快的业务动态,给公司整体发展计划带来不利的影响。第2章 基于WEB网络开发平台简介2.1 WEB网络的产生和发展计算机网络从20世纪60年代发展至今,己经形成从小型的办公局域网络到全球性的大型广域网的规模。对现代人类的生产、经济、生活等各个方面都产生了巨大 的影响。纵观计算机网络的发展历史可以发现,它和其他事物的发展一样,也经历了从简单到复杂,从低级到高级的过程。在这一过程中,计算机技术与通信技术紧密结合,相互促进,共同发展,最终产生了计算机网络。总体看来,网络的发展可以分为四个阶段。在计算机网各出现之前,信息的交换是通过磁盘进行相互传递资源的,如图2.1所示:图2.1 磁盘信息交换图在1946年,世界上第一台数字计算机问世,但当时计算机的数量非常少,且非常昂贵。而通信线路和通信设备的价格相对便宜,当时很多人都很想去使用主机中 的资源,共享主机资源和进行信息的采集及综合处理就显得特别重要了。1954年,联机终端是一种主要的系统结构形式,这种以单主机互联系统为中心的互联系 统,即主机面向终端系统诞生了。如图2.2所示。图2.2 面向主机的互联系统随着终端用户对主机的资源需求量增加,主机的作用就改变了,原因是通信控制处理机(Communication Control Processor,CCP)的产生,它的主要作用是完成全部的通信任务,让主机专门进行数据处理,以提高数据处理的效率,如图2.3所示:图2.3 带控制器的互联系统为了克服第一代计算机网络的缺点,提高网络的可靠性和可用性,人们开始研究将多台计算机相互连接的方法。第二代网络是从20世纪60年代中期到70年代中 期,随着计算机技术和通信技术的进步,己经形成了将多个单主机互联系统相互连接起来,以多处理机为中心的网络, 并利用通信线路将多台主机连接起来,为终端用户提供服务。如图2.4所示:图2.4 多主机互联系统第二代网络是在计算机网络通信网的基础上通过完成计算机网络体系统结构和协议的研究,形成的计算机初期网络。如,20世纪60至70年代初期由美国国防部高级研究计划局研制的ARPANET网络,它将计算机网络分为资源子网和通信子网,如图2.5所示:图2.5 通信子网和资源子网进入20世纪90年代后至今都是属于第四代计算机网络,第四代网络是随着数字通信出现和光纤的接入而产生的,其特点:网络化、综合化、高速化及计算机协同 能力。同时,快速网络接入Internet的方式也不断地诞生如: ISDN、ADSL、DDN、FDDI和ATM网络等。2.2 MVC模型MVC英文即Model-View-Controller,即把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三个层模型层、视图层、控制层。图2.6 MVC模式图模型(Model):就是业务流程/状态的处理以及业务规则的制定。业务流程的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处 理结果。业务模型的设计可以说是MVC最主要的核心。目前流行的EJB模型就是一个典型的应用例子,它从应用技术实现的角度对模型做了进一步的划分,以便 充分利用现有的组件,但它不能作为应用设计模型的框架。它仅仅告诉你按这种模型设计就可以利用某些技术组件,从而减少了技术上的困难。对一个开发者来说, 就可以专注于业务模型的设计。视图(View)代表用户交互界面,对于Web应用来说,可以概括为HTML界面,但有可能为XHTML、XML和Applet。随着应用的复杂性和规模 性,界面的处理也变得具有挑战性。一个应用可能有很多不同的视图,MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括 在视图上的业务流程的处理。业务流程的处理交予模型(Model)处理。比如一个订单的视图只接受来自模型的数据并显示给用户,以及将用户界面的输入数据 和请求传递给控制和模型。控制(Controller)可以理解为从用户接收请求, 将模型与视图匹配在一起,共同完成用户的请求。划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以 完成什么样的用户请求。控制层并不做任何的数据处理。例如,用户点击一个连接,控制层接受请求后, 并不处理业务信息,它只把用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。因此,一个模型可能对应多个视图,一个视图可能对应多个模型。2.3 Struts框架Struts是Apache 基金会Jakarta 项目组的一个Open Source 项目,它采用MVC模式,能够很好地帮助java 开发者利用J2EE开发Web应用。和其他的java架构一样,Struts 也是面向对象设计,将MVC模式分离显示逻辑和业务逻辑的能力发挥得淋漓尽致。Structs 框架的核心是一个弹性的控制层,基于如 Java Servlets,JavaBeans,ResourceBundles 与XML等标准技术,以及 Jakarta Commons 的一些类库。Struts有一组相互协作的类(组件)、Serlvet以及jsp tag lib组成。基于struts构架的web应用程序基本上符合JSP Model2的设计标准,可以说是一个传统 MVC设计模式的一种变化类型。Struts 是MVC的一种实现,它将 Servlet和 JSP 标记(属于 J2EE 规范)用作实现的一部分。Struts继承了MVC的各项特性,并根据J2EE的特点,做了相应的变化与扩展。Struts的体系结构与工作原理如下图2.7所示:图2.7 struts工作原理图Struts体系结构中的组件: 图2.8 体系结构图2.4 Oracle数据库ORACLE 是以高级结构化查询语言(SQL)为基础的大型关系数据库,通俗地讲它是用方便逻辑管理的语言操纵大量有规律数据的集合。是目前最流行的客户/服务器(CLIENT/SERVER)体系结构的数据库之一。ORACLE数据库在物理上是存储于硬盘的各种文件。它是活动的,可扩充的,随着数据的添加和应用程序的增大而变化。下图为ORACLE数据库扩充前后在硬盘上存储结构的示意图:图2.9 存储结构图ORACLE数据库在逻辑上是由许多表空间构成。主要分为系统表空间和非系统表空间。非系统表空间内存储着各项应用的数据、索引、程序等相关信息。我们准备上马一个较大的ORACLE应用系统时,应该创建它所独占的表空间,同时定义物理文件的存放路径和所占硬盘的大小。下图为ORACLE数据库逻辑结构与物理结构的对照关系:图2.10 结构对比图Oracle数据库跟其他的数据库一样,具有数据库系统的通用性:1、 数据库管理系统。我们知道,所谓的数据库就是一些结构化的数据的联合体,要提供对这些数据的存取、增加、修改、删除或更加复杂的数据抽取等操作,需要有一个支撑系统,这就是数据库管理系统(DBMS),Oracle完全具有这方面的功能。2、 关系型数据库管理系统。在数据库的发展历程中,曾出现过多种不同形式的数据库系统,但关系型数据库管理系统(RDBMS)以其优越性而被广为采用,象现在几种广泛使用的数据库全为关系型数据库。同样,Oracle也是关系型的数据库系统,支持标准的结构化查询语言(Structured Query Language)。3、 开放源码数据库。同商业性的数据库相比,这是Oracle最大的特点。Oracle的源码是公开的,这就意味着任何人,只要遵守GPL的规则都可以对Oracle的源码使用、修改以符合自己特殊的需求。4、 技术特点。Oracle是C/S架构的服务器,服务器端是多线程的,为客户端提供了不同的程序接口和链接库,如C、C+、Java、Perl、PHP、Tcl等,也提供了简单的管理工具。第3章 银行账户管理系统需求分析3.1 银行账户信息化发展国内外现状需求中国Internet发展较晚,但速度较快,预计2000年底,Internet用户将达到1500万户,PC普及率达到总人口的2%。 中国银行(BOC)从1996年起投入网上银行的开发,1997年在网上建立了自己的网页,1998年开始提供网上银行服务,1998年3月中 国第一笔Internet网上电子交易成功。目前,中国银行、工商银行、建设银行、招商银行、光大银行等几家银行的总行及其部分分行已经开始尝试提供网上 银行服务。但我国的网上银行尚处在萌芽阶段,发展较慢,仍存在很多问题亟待解决:(1)网上银行所能提供的服务品种,仅局限在账户信息查询方面,转账付款 适用的范围仍极其有限,更没有涉及贷款、投资等方面。(2)国内信用卡业务十分落后,仍局限于一种结算工具,严重地阻碍了网上银行、电子商务的发 展。(3)网上银行服务质量不高,速度慢、手续复杂,没有达到方便、快捷的宗旨。(4)宣传力度不够,人们对网上银行的认识不清楚。多数人不知道有网上银 行服务;知道有网上银行的,弄不清楚是怎么回事,造成网上银行是阳春白雪,无人问津。网上银行最早起源于美国,其后迅速蔓延到Internet所覆盖的各个国家。美国安全第一网络银行(SFNB)从1996年就开始了网上金融服务,美国银行业6%一7的客户使用网上银行系统。目前,国际上提供网上银行服务的机构分两种:一种是原有的负担银行(incumbent Bank),机构密集,人员众多,在提供传统银行服务的同时推出网上银行系统,形成营业网点、ATM、POS机、电话银行、网上银行的综合服务体系;另外 一种是信息时代倔起的直接银行(Direct Bank),机构少,人员精,采用电话、Internet等高科技服务手段与客户建立密切的联系,提供全方位的金融服务。现举例说明这两种银行的发展情况。目前国际金融界的发展状况表明,尽管不同的银行有其不同的发展战略,目前正处在不同的发展阶段,但有一点是肯定的,即随着Internet的不断发展,随着金融业的不断创新,网上银行必将包含银行所有的业务,成为银行主要的业务手段。3.2 功能需求银行账户管理系统,用户可以操作自己的银行账户.模仪各银行系统的对帐户的管理模式,用户根据自己的需求对帐户进行各种操作,如开户,登陆,存款,取款,查询,转账等基本业务功能.根据需求对各个阶段的实施都采用独立模块的方式,降低各个功能块的耦合度,真正的实现了面向对象的编程思想。用户的主要需求有帐户管理、取款机管理、用户查询、查询统计等几个方面:1、帐户管理方面:存款、取款、开户、销户、修改信息、办卡、挂失卡;2、取款机信息管理方面:管理员管理查询和维护、客户查询和取款等功能;3、用户查询方面:用户希望便于查询自己帐户的信息。4、查询统计方面:VIP用户统计、ATM业务量统计、异动查询统计、 持卡总量消费统计、工作量负荷统计等功能。 图3.1 用例图3.3 可行性论证设计的指导思想是一切为使用者着想,界面要美观大方,操作尽量简单明了,而且作为一个实用的管理系统要有要有良好的容错性,在出现误操作时能尽量及时地给出警告,以便用户及时地改正。计算机的资源是受到限制的,因此要充分利用VisualFoxPro的功能,设计出功能强大的软件,同时要尽可能地减少对系统资源的占用。鉴于本系统的特殊性,还需要本程序有良好的保密性。具体表现为:1、系统应符合银行账户管理的规定,满足银行相关人员日常使用的需要,并达到操作过程中的直观、方便、实用安全等要求;2、系统采用模块化程序设计方法,即便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充、维护;3、系统应具备数据库维护功能,及时根据用户需求进行数据的添加、删除、备份等操作;4、尽量采用现有软硬软硬件环境及先进的管理系统开发方案,从而达到充分利用现在有资源,提高系统开发水平和应用效果的目的。3.4 网络和系统安全需求随着用户对网络安全的关注焦点由传统网络、应用层安全转移到系统层面的安全,中国的信息安全产业正在迎来一场全新的机遇。过去的2008年对于中国信息安全意义非凡,这一年我国信息安全建设面对了巨大的安全挑战,也经历着安全技术的进步与革新。微软漏洞“震惊全球”、 网络犯罪“蒸蒸日上” 、数据泄露带来“安全恐慌”隐私数据丢失、虚拟财产被窃等安全事件不断显现;相关数据显示2008年的病毒数量比2007年增长12倍以上,其中以“ 网页挂马”所传播的木马、后门等病毒占据90%以上,网络攻击的频次、种类和复杂性也比往年大幅增加,遭入侵和受控计算机数量巨大。其中,政府类型的网站 成为了网络攻击的主要目标。可以说,中国互联网潜在威胁和攻击力继续增长,信息数据安全问题日益突出,网络安全形势严峻。更重要的是,随着黑色产业链浮出 水面,攻击的本质也在08年也有了根本的改变。新的网络安全需求和理念给网络安全防护带来新的变化。网络安全不再只是“防火”和“杀毒”,行业用户对内核加固以及系统层安全的认知和了解正在不断提高, 正如浪潮集团董事长孙丕恕所说,“2008年服务器系统安全产品的应用步伐加快,比如行业不断扩展、奥运会等国家重大赛事的应用,已经充分反映出国家政府 部门、行业用户对服务器系统安全的认同。当用户需求的方向与规模非常明确的时候,这个技术的发展趋势就形成了”。专家进一步分析用户需求变革形成的原因,由于网络安全面临新的挑战,传统的安全软件产品已无法满足用户的安全需求,而浪潮SSR则直接针对系统层的核心服 务器进行安全防御,通过对系统内核进行安全加固,构造一道安全屏障,从而抵御病毒、黑客对操作系统的攻击,最终目的可以保证应用系统和数据的安全。第4章 银行账户管理系统总体设计4.1系统基本功能及目标银行账户管理系统是一个基于网络的网上银行系统,用户可以通过网络就能网上的各种操作,如:查询,转账,存款,取款的业务操作,可以方便地满足用户的需求。该系统本身就是一个基于网络的请求和应答模式的系统,用户必须先经过登陆验证,才能进入到主功能页面,进行进一步的功能需求的操作业务,如果你是新用户呢,必须通过注册,成为会员后,能享受各种优秀的服务。网上银行可以减少固定网点数量、降低经营成本,而用户却可以不受空间、时间的限制,只要一台PC、一根电话线,无论在家里,还是在旅途中都可以与银行相连,享受每周7天、每天24小时的不间断服务。其次,网上银行的客户端由标准PC、浏览器组成,便于维护。网上Email通信方式也非常灵活方便,便于用户与银行之间,以及银行内部之间的沟通。系统运行流程图描绘了物理系统的总体运行情况。浏览此图可对整个系统有一个快速、清晰的认识。上图为进销存管理系统的系统运行流程图。4.2系统的业务流程图具体业务流程如下; 图4.1 业务流程图4.3 主要功能模块设计银行账户管理系统的主实体为3个类,Account类为主账户类,它包括id,用户名,密码,身份证号,账户余额,账户类型等,该类下面存在两个子类,分别为SavingAccount(储存账户)和CreditAccount(信用账户)两种类型,他们的根本的区别在于业务上的,储存账户要求取款余额不能透支,而信用账户有10000元的透支额度,他们完全继承余父类,是功能的一个很好的扩充。类图如下: 图4.2 类图4.4 数据库表的设计为了把数据信息进行有效的保存,就得把数据很好地保存到数库中,每次都数据库的访问和操作都从数据库中读取,并把修改的信息同步更新到数据库表中,那么数据库表的设计尤其重要。“持久化”仅仅指把域对象永久保存到数据库中;广义的理解,“持久化”包括和数据库相关的各种操作。1、保存:把域对象永久保存到数据库。2、更新:更新数据库中域对象的状态。3、删除:从数据库中删除一个域对象。4、加载:根据特定的OID,把一个域对象从数据库加载到内存。5、查询:根据特定的查询条件,把符合查询条件的一个或多个域对象从数据库加载内在存中。 tb_account(账户信息表)主要用来存储用户的信息,表中的数据结构表如下:表4.1tb_account(账户信息表)字段名字段类型字段大小主键外键可空否 备注 Idvarchar6是否否数据库流水线号usernamevarchar50否否是用户登陆名passwordvarchar10否否是用户登陆密码typenumber6否否是卡的类型balancenumber20否否是账户余额overflownumber20否否是信用卡的额度namevarchar230否否是用户姓名对Oracle数据库建立连接,利用JNDI连接池建立连接需要对tomcat的context.xml的文件进行配置: 建立连接Connection的JAVA代码为:Context c=new InitialContext();DataSource ds=(DataSource)c.lookup(java:comp/env/oracle/ds);return ds.getConnection();第5章 银行账户管理系统详细设计5.1 登陆界面模块设计登陆模块是一个基于请求和应答服务的WEB应用,它是由struts框架实现,用户在浏览器的地址栏发送登陆页面的请求,服务器端接受到请求后显示相应的登陆页面,用户根据自己的账户信息选择登陆,请求将此登陆信息送回服务器,服务器根据在数据库发送来的信息进行登陆验证,若成功的话即进入功能模块选择页面。其活动流程图如下:图5.1 登陆时序图主界面如下图所示:图5. 2 登陆界面截图用户发送访问请求后,显示的的登陆页面,用户如果还不是会员,可以选择点击注册按钮进行注册,否则可以输入用户名和密码进行登陆操作;public class LoginAction extends MappingDispatchAction public ActionForward login(ActionMapping mapping, ActionForm form,HttpServletRequest re, HttpServletResponse res)throws Exception String userName=re.getParameter(userName);/获得登陆界面的登录名String password=re.getParameter(password);/获得登陆界面的密码AccountBiz b=new AccountBiz();b.login(userName, password);/调用业务层定义好的业务方法,对登陆过程进行操作控制(biz包中的方法)re.getSession(true).setAttribute(userName, userName);/如果正确登陆,把登陆的名交给session进行管理return mapping.findForward(login_ok);/从配置文件中找到它指向的URL5.2 注册界面模块设计用户请求到该页面时,按照信息填写注册信息,带有*的为必填项,注册时不能为空,填写完成后,点击“提交”按钮对表单的信息进行提交,插入到数据库中。注册界面的截图:图5.3 注册界面截图登陆名在数据库中是唯一的存在唯一性约束,所以每次插入前得对它进行可用性检查,本例采用AJAX的技术,与服务器端产生异步通讯交换信息,看数据库中是否存在该登录名;var xhr=null;function createRequest()if( window.ActiveXObject )xhr = new ActiveXObject( Microsoft.XMLHTTP ) ;else if( window.XMLHttpRequest )xhr = new XMLHttpRequest() ;elsethrow new Error(Does not support ajax program);function $(id)return document.getElementById(id);function hello()createRequest();xhr.open(POST,check.do);xhr.setRequestHeader(Content-Type,application/x-www-form-urlencode d);var userName=$(userName).value;xhr.onreadystatechange=checkName ;xhr.send(userName);function checkName()if(xhr.readyState=4)if(xhr.status=200)var str=xhr.responseText;alert(str);“提交”按钮的事件函数:function resub()var tag=document.reg;if($(userName).value=null|$(userName).value.length=0)alert(登陆名不能为空!);tag.reset();else if($(password1).value=null|$(password1).value.length=0) alert(登陆密码不能为空!); tag.reset(); else if($(password2).value=null|$(password2).value.length=0) alert(请重复登陆密码!); tag.reset(); else if($(password1).value!=$(password2).value) alert(两次输入的密码不一致!); tag.reset(); else tag.submit(); 5.3 主菜单功能设计主菜单界面的功能图:图5.4 主菜单截图该系统的主要价值就体现在这,它的每一个业务流程就被控制为一个事务,由于数据库的关系,每个操作要么全成功,要么全部失败,要保证操作的信息要与数据库中保持同步,并把改变的信息保存到数据库中去。相应的按钮的单击事件为:function $(id)return document.getElementById(id);function query()var tag=$(ddd).parentNode;tag.action=query.do;tag.submit();function save()var tag=$(ddd).parentNode;tag.action=save.do;tag.submit();function desp()var tag=$(ddd).parentNode;tag.action=desp.do;tag.submit();function trans()var tag=$(ddd).parentNode;tag.action=trans.do;tag.submit();function modify()var tag=$(ddd).parentNode;tag.action=modify.do;tag.submit();function exitt()var tag=$(ddd).parentNode;tag.action=exit.do;tag.submit();第6章 银行账户管理系统的调试和评价6.1测试与结果设计测试方案是测试阶段的关键技术问题。在软件开发的初期使用白盒测试技术进行单元测试,而在开发的后期着重对软件的功能进行测试因此采用黑盒测试技术。在初期每做完一个单元都进行了测试,服务器端与客户端建立好连接以后进入可视化界面,如果测试新建用户功能则点击新建按扭输入数据,向服务器提交信息,如果出现预期的结果并返回icqno值说明该单元成功不必进行调试,如果出错则进入调试阶段,其他单元做相似的处理。在测试的阶段遇到了很多问题,起初建立服务器与客户端连接时先运行了客户端后运行服务器以至于无法连接不能登上登录界面,经过思考先运行服务器就行了,新建用户时也出现了注册信息写不进数据库,抛出false new异常,经过调试发现是JDBC连接数据库的加载数据库驱动错误,经过细心调试也终于实现了新建用户功能。我在编写完每一个模块后,都进行测试与调试,尤其在更新用户信息时遇到了很大的问题,当重复加同一个好友时不能提示信息并进行覆盖,更新没有做到当好友信息修改了以后,使好友信息自动在用户端改正。在设计后期主要进行功能测试,输入以有的icqno和不存在的icqno分别进行测试观察结果是否与预期结果相符并做相应的处理。性能方面看软件的运行速度,如果速度过慢就应该分析一下系统的整体设计是否冗余过大并进行相应的处理,做去除重复语句等处理。设计后期的功能测试,用户登录,新建用户,查看好友资料,直接加友模块都已实现,但是发送接收消息还不稳定,发送消息只能传送字母和数字,不能传送汉字能发送但接收到了的有的汉字正确有的是乱码,这一点让我很困惑,接收信息有时会显示陌生人来信息,而不能读传来了信息。测试得出来了结果对以后的开发是非常宝贵的经验,经过仔细的调试、标识把错误改正记录下来,这些记录是我们日后开发的重要经验总结。白盒测试与黑盒测试对我们测试我们的设计是非常有效可行的测试方法,选定一些数据进行相应的测试是最简单和最使用的,也是白盒,黑盒测试的核心。模块测试也叫单元测试,目的是保证每一个模块作为一个单元能正确运行,本测试所发现的往往是编码和详细设计的错误,主要评价模块的下述五个特点:模块接口、 局部数据结构、重要的执行路径、出错处理通路、影响上述各方面特性的边界条件。模块测试主要由代码审查和软件测试两部分组成。集成测试包括系统测试和子系统测试。集成测试是组装软件的系统技术,主要目标是发现与接口有关的问题。集成测试有两种方法:非渐增式和渐增式,但比较而言,渐增式方法比较好,因为: 1、 编写的测试软件较少,开销较小。 2、 较早地发现模块间的接口错误。3、 错误位置容易判断。 4、 测试更彻底。因此,本系统集成测试采用渐增式测试中的混合法,即对软件结构中较上层使用自顶而下的测试方法,而对软件结构中较下层,使用的是自
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 牙科合伙合同协议
- 涉外担保合同协议
- 衣服授权协议书范本
- 手机按揭合同协议
- 遵守条约合同协议
- 物流外协合同协议
- 郑州劳务合同协议
- 邮件运输合同协议
- 装饰油漆合同协议
- 手机交易合同协议
- 国家发展改革委低空经济司
- 单位体检协议书模板合同
- 课题申报书:医学院校研究生“导学思政”创新实践路径研究
- 2025年游泳教练资格认证考试理论试题集(初级)
- 委托律师签署协议书
- 图文工厂转让协议书
- 货物贸易的居间合同
- 2025-2030中国疗养院行业市场深度分析及前景趋势与投资研究报告
- 2025年国企山东济南公共交通集团有限公司招聘笔试参考题库附带答案详解
- 高二入团考试试题及答案
- 福建省漳州市医院招聘工作人员真题2024
评论
0/150
提交评论