基于JAVA的银行账户管理系统毕业论文报告.docx
《基于JAVA的银行账户管理系统毕业论文报告.docx》由会员分享,可在线阅读,更多相关《基于JAVA的银行账户管理系统毕业论文报告.docx(52页珍藏版)》请在冰点文库上搜索。
基于JAVA的银行账户管理系统的设计与实现
摘要
随着我国信息产业的迅速发展以及中国加入世界贸易组织,国内外银行之间的竞争也越来越激烈,如何发展业务以吸引更多顾客是各银行面对的当务之急。
于此同时,账户管理是银行业务流程过程中十分重要且必备的环节之一,并且现在银行的业务越来越多,吸引的客户也越来越多,银行账户的高效管理就越显重要。
银行账户管理系统是针对银行账户的日常管理而设计,操作方便而且界面简洁,使用Java作为编程语言,Eclipse作为开发工具,Mysql作为后台数据存储,采用软件工程的开发原理,按照需求分析、概要设计、详细设计、程序编码、软件测试等过程进行规范设计。
本银行账户管理系统具有良好的容错性,在出现误操作时能及时的给出相关错误提示,以便于用户及时地更正。
设计过程思路清晰,模块划分简洁,设计各阶段分工明确,极大的提高了本系统的实现。
关键词:
账户管理;业务流程;Java;Eclipse;软件工程
Abstract
WiththerapiddevelopmentoftheinformationindustryandChina'saccessiontotheworldtradeorganization,thecompetitionbetweendomesticandforeignbankisalsomoreandmorefierce.Howtodevelopbusinesstoattractmorecustomersatthemomentistheproblemmanybanksconfront.Atthesametime,accountmanagementisoneoftheimportantandnecessarylinksintheprocessofbankbusiness.Besides,thebankbusinessesnowadaysarebecominglargerandlarger,andmoreandmorecustomersareattracted,soefficientmanagementofbankaccountseemsextremelyimportant.
Bankaccountmanagementsystemisdesignedforthedailyadministrationofbankaccount.Itiseasytooperateandhasaconciseinterface.ItusesJavaasaprogramminglanguage,applyEclipseasdevelopmenttools,chooseMysqlasthebackgrounddatastorageandadoptthesoftwareengineeringevelopmentprinciple.Itisdesignedaccordingtotherequirementanalysis,generaldesign,detaileddesign,programcode,softwaretestandsoon.
Thisbankaccountmanagementsystemisgoodatfaulttolerance.Whendealingwiththewrongoperation,itcanpointouttherelatederrorsintime,sothatuserscancorrecttheerrorstimely.Thethinkingofthedesignprocessisclear,themodulepartitionisconciseandthedivisionofeachstageisexplicit,whichcontributealottotheachivementofthissystem.
Keywords:
accountmanagement;softwareengineering;Java;Eclipse;businessprocess
目录
第1章绪论 1
1.1概述 1
1.2可行性分析 1
1.2.1技术可行性 1
1.2.2经济可行性 1
1.2.3管理可行性 2
1.3设计意义 2
1.4设计目标 2
第2章开发工具及运行环境 3
2.1开发工具 3
2.1.1Java语言特性 3
2.1.2Eclipse 3
2.1.3Mysql与NavicatforMysql 4
2.2运行环境 4
第3章系统需求分析 5
3.1功能模块分析 5
3.1.1用户注册 5
3.1.2用户登录 5
3.1.3用户主菜单 5
3.1.4存款功能 6
3.1.5取款功能 6
3.1.6转账功能 6
3.1.7查询功能 7
3.1.8修改密码 7
3.1.9返回功能 8
3.2业务流程分析 8
3.3数据流程分析 8
3.3.1系统关联图 8
3.3.2顶层图 9
3.3.3数据流图 9
第4章数据库分析 10
4.1数据库需求分析 10
4.2数据库概念结构设计 11
4.3数据库逻辑结构设计 11
4.4数据库结构的实现 12
第5章系统设计 14
5.1用户实体 14
5.2界面代码设计 15
5.3数据库的连接 17
5.4功能模块的实现 18
第6章系统测试 19
第7章总结与展望 25
7.1总结 25
7.2展望 25
参考文献 26
致 谢 27
附 录 28
1.1概述
第1章绪论
12
进入21世纪之后,随着科技的飞速发展和社会进步,尤其是计算机在大范围的普及,人工智能化的计算机应用也逐步的由大规模科学计算的海量数据处理转向大规模的事务处理和对工作流的管理,这就产生了以计算机为核心,以数据库管理系统为开发环境的管理信息系统在大规模的事务处理和对工作流的管理等方面的应用,特别是在银行账户管理之中的应用日益受到人们的关注。
自中国加入WTO之后,我国信息产业发展迅速,手工管理方式在银行账户管理等需要大量事务处理的应用中已显得越来越不适用,采用IT技术提高服务质量和管理水平势在必行[1],银行必须提高自己的工作效率,迎接挑战。
1.2可行性分析
可行性分析能使新系统达到以最小的开发成本取得最佳的经济效益,其目的也是根据开发管理信息系统的需求,通过初步调查和系统目标分析,对要开发的银行账户管理信息系统从技术上、经济上和管理上进行是否可行的研究与分析,这既是保证资源的有效合理利用,也是避免在日常工作中的失误而导致的种种浪费现象。
1.2.1技术可行性
技术方面,本系统采用Java语言进行设计,Java也是我们比较熟悉的语言。
由于是初次设计银行管理系统,在技术和知识层面上的欠缺,导致在制作过程中遇到许多的困难,编程和设计的时候,明显感觉到知识积累的不够,并且很多知识点已经淡忘。
通过与老师的沟通,在老师的细心指导下,以及我们的一起努力,翻阅了大量的资料,多操作多实践,本系统才得以比较顺利的开发出来。
因为实践和技术方面的不足,使得我们设计的程序依然存在很多不完善的地方,我们会在以后的开发中继续学习钻研,使本系统能更完善更适用。
1.2.2经济可行性
本系统相对较小也比较简单,不需要投入大量资金,同时又存在着实用性,能改善使用方法在财力和人力上的过度消耗。
因此这个新系统一经使用便可收到很好的成效,做到合理节约和合理利用资源。
银行方面在使用新系统时只需要花一定资金购买一部分计算机与软件就能实现自动化,既提高了工作效率并且也减少了工作人员的工作量,这使银行在处理业务方面得到很大的提升空间。
1.2.3管理可行性
使用管理方面的可行性,在没有使用银行管理系统前,采取的是人工方式,相对而言耗时大,效率低且造成一定的资源浪费。
通过设计银行管理系统,可以对银行的一半业务进行有序的管理,对于客户的个人资料也不需要做大量繁琐的等级工作,变的相对简单容易操作且不用耗费大量人力财力[2]。
1.3设计意义
第三产业在一个国家经济中所占的比例是经济结构是否先进成熟的重要标准之一。
而金融业是第三产业中最为重要的产业,是其他所有产业的力量后盾,为其他产业的正常运营提供保障。
银行作为金融业的执行机构,越来越庞大的储蓄用户数目和资金流通量对银行账户管理的可靠性每天都在进行苛刻的考验。
所以银行的经营方式和服务手段需转向电子化、网络化、多元化、个性化的方向发展,同时,银行的电子化和现代化管理水平为银行在市场运作、金融创新、客户服务以及量化管理上奠定了技术基础,这将会使得银行获得很大的竞争优势,不但有利于扩大客户群,稳固业务基础,而且可以增加收益来源,完善业务结构,增强了抵御风险的能力。
1.4设计目标
本论文的目的是使银行账户管理清晰化、透明化,便与操作,易于管理。
通过功能的模块优化组合实现不同的管理细节,使管理过程实现最大程度的自动化与信息化,并能自动对人工操作环节进行复查,使账户出错率降至最低。
账户管理的最明显特征是信息处理量比较大,所管理的业务流程也相应繁多,因此本银行账户管理系统的有效管理必须实现计算机化处理,真正意义使得系统能够实现管理的系统化、自动化、规范化以及信息化和智能化等[3],从而达到提高账户管理效率的目的。
第2章开发工具及运行环境
开发工具一般在软件开发过程是一个必不可少的,其属于一种被软件开发工程师定性的认为是为特定的软件包、系统(或软件)框架以及操作平台等创建应用性软件的特殊软件。
在一个完善的系统的开发过程中,必要的开发工具将为整个开发的过程减少较多的成本和时间,提高了开发效率。
同时每个系统的开发平台不一样,其所搭建的开发环境当然也会有很大的差别。
开发环境是基于硬件和宿至软件的基础上,为支持系统软件和应用软件的工程化开发和维护而使用的一组软件,简称SDE。
它由软件工具和环境集成机制构成,前者用以支持软件开发的相关过程、活动和任务,后者为工具集成和软件的开发、维护及管理提供统一的支持。
本系统依据开发的实体需求,采用的开发工具有Eclipse、Mysql和NavicatforMysql。
2.1开发工具
2.1.1Java语言特性
Java是Sun公司推出的新的一代面向对象程序设计语言,特别适合于Internet应用程序开发,它的平台无关性致使它能够风靡全球,引起一片热潮,用Java编程已经成为技术人员的一种时尚[4]。
Java是一种简单的面象对象的分布式的解释的健壮的安全的结构中立的可移植的性能很优异的多线程的动态的语言,Java的诞生是对传统计算机模式的挑战,对计算机软件开发和软件产业都产生了深远的影响,对软件开发带来了新的革命,重视使用第三方构件集成,利用平台的基础设施服务,实现开发各个阶段的重要技术,重视开发团队的组织和文化理念,协作,创作,责任,诚信是人才的基本素质。
总之,目前以看到了Java对信息时代的重要性,未来还会不断发展,Java在应用方面将会有更广阔的前景。
Java还提供了一个功能强大语言库,几乎没有一点含混特征,比C++安全性好,与此同时,Java去掉了多个C和C++功能和特征,如指针运算结构typedefs#define需要释放内存全局变量的定义,而在Java虚拟机中增加了垃圾回收机制[6],由系统自动释放内存,让Java的语言功能很精炼。
2.1.2Eclipse
Eclipse是一个开放源代码的、基于Java的可扩展开发平台。
就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。
幸运的是,Eclipse 附带了
一个标准的插件集,包括Java开发工具(JavaDevelopmentKit,JDK)。
虽然大多数用户很乐于将Eclipse当作Java集成开发环境(IDE)来使用,
Eclipse还包括插件开发环境(Plug-inDevelopmentEnvironment,PDE),这个组件主要针对希望扩展Eclipse的软件开发人员,因为它允许他们构建与 Eclipse环境无缝集成的工具。
由于Eclipse中的每样东西都是插件,对于给Eclipse提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。
这种平等和一致性并不仅限于Java开发工具。
尽管Eclipse是使用Java语言开发的, Eclipse框架还可用来作为与软件开发无关的其他应用程序类型的基础。
基于
Eclipse的应用程序的一个突出例子是IBM®Rational®SoftwareArchitect,它构成了IBMJava开发工具系列的基础[7]。
2.1.3Mysql与NavicatforMysql
Mysql是一个小型关系型数据库管理系统,开发者为瑞典MysqlAB公司。
在2008年1月16号被Sun公司收购。
而2009年,Sun又被Oracle收购。
Mysql是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内。
这样就增加了速度并提高了灵活性。
Mysql的SQL“结构化查询语言”。
SQL[8]是用于访问数据库的最常用标准化语言。
Mysql软件采用了GPL(GNU通用公共许可证)。
由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了Mysql作为网站数据库[9]。
Navicat是一套快速、可靠,在市场中也是一套价格相宜的数据库管理工具,专为简化数据库的管理及降低系统管理成本而设。
NavicatforMysql是Mysql的客户端工具,同时也是一个强大的Mysql数据库服务器管理和开发工具。
它的设计符合数据库管理
员、开发人员及中小企业的需要。
Navicat是以直觉化的图形用户界面而建的,让你可以以安全并且简单的方式创建、组织、访问并共用信息。
2.2运行环境
软件环境:
JDK1.6,Windows2000以上的操作系统;硬件环境:
最低IntelPentiumII 500MHz;
安装内存(RAM):
512MB(最好1GB以上)。
3.1功能模块分析
第3章系统需求分析
本论文介绍的银行账户管理系统针对普通用户的日常业务需求设置了用户注册、用户登录、用户主菜单、用户存款、用户取款、用户转账、用户查询余额、用户设置密码以及返回退出系统9大模块,用户需要严格依据系统规定的业务流程,并根据当前的业务状态选择所要办理的业务,进行实时操作,管理自己的财务账户,全自动化处理[8],简单易用,方便快捷。
3.1.1用户注册
对于新客户,需要办理注册手续,才能进入系统完成其他的业务办理。
用户注册需要用户提供真实有效的用户名、密码、身份证号、邮箱等相关信息,待数据校验无误,提交完成,注册才能成功,如表1所示。
表1用户注册
输入
处 理
操作
1.用户名
2.密码
3.确认密码
4.证件号
5.电子邮箱
信息校验
1.数据不符合输入要求,无法注册,给出提示;2.信息校验无误,确认提交,注册成功。
3.1.2用户登录
在此模块中需要用户输入用户名和密码,再与数据库的数据进行匹配,当用户名和密码与数据库中的对应数据完全一致时,方可进入操作界面,否则用户无法进入业务界面选择相应的业务办理,如表2所示。
表2用户登录
输入
处 理
操作
1.如果用户名或者密码不正确,
1.用户名
2.密码
验证用户名及密码
给出提示;
2.用户名、密码正确,进入用户
主菜单界面。
3.1.3用户主菜单
在用户输入信息,待校验完全正确方可登录,之后即可进入到主菜单模块,在该
模块中罗列了用户的所有业务(包括存款、取款、转账、查询、修改密码以及返回退出)供用户选择,用户只需要选择相应的业务,就可以选择实现不同的系统功能,办理相应的业务,如表3所示。
表3用户主菜单
输入
处 理
操作
1.存款
2.取款
3.转账
4.查询余额
5.修改密码
6.返回
用户根据自己的需要,选择相应的业务
根据用户的选择,进入相应的业务界面。
3.1.4存款功能
在用户主菜单中,用户选择“存款”,即可进入“存款”子模块,该模块需要用户输入存款金额,且要求输入的金额必须大于0并且为100的倍数,否则用户无法进行存款,如表4所示。
输入
处 理
操作
存款金额
金额的校验
1.金额不符要求,提示出错信息
2.金额符合要求,提示存款成功
表4存款功能
;
。
3.1.5取款功能
在用户主菜单中,用户选择“取款”,即可进入“取款”子模块,该模块需要用户输入取款金额,而且要求输入的金额必须大于0并且为100的倍数,还有取款金额不能大于该用户卡中的余额,否则用户无法进行取款业务,如表5所示。
输入
处 理
操作
取款金额
金额校验
1.金额不符要求,提示出错信息
2.金额符合要求,提示存款成功
表5取款功能
;
。
3.1.6转账功能
在用户主菜单中,用户选择“转账”,即可进入“转账”子模块,该模块需要用户输入转入账户的ID,以及转入金额。
在数据库中需要对转入账号的ID进行检索,如果数据库中存在转入账户的ID,才能进行下一步的转账操作,同时也要对输入的金额进行校验,当两者均符合要求时,方可转账成功,否则给出相关错误提示,转账失败,如表6所示。
表6转账功能
输入
处 理
操作
1.转入账号
2.转入金额
ID检索金额校验
1.与数据库匹配,根据ID是否存在,提示相关信息;2.金额不符要求,错误提示;
3.符合要求,提示转账成功。
3.1.7查询功能
在用户主菜单中,用户选择“查询”,即可进入“查询余额”子模块,该模块不需要用户输入任何信息,进入该模块后即可看到当前登录用户的账户中的余额,如表7所示。
表7查询功能
输入
处 理
操作
无
信息确认退出系统
确认信息后返回到用户主菜单;或者退出系统。
3.1.8修改密码
在用户主菜单中,用户选择“修改密码”,即可进入“修改密码”子模块,该模块需要用户输入相关注册信息(如用户名、密码、确认密码、证件号、电子邮箱等),并对输入的信息进行条件约束,当所有条件均满足时方可完成注册,否则给出相关错误提示,注册失败,如表8所示。
表8修改密码
输入
处 理
操作
1.用户名
2.密码
3.确认密码
4.证件号
5.电子邮箱
信息校验
信息校验无误,即可完成注册,同时跳转到登录模块,否则提示相关错误信息。
3.1.9返回功能
在用户主菜单中,选择“返回”,即可返回到登录模块或者直接退出系统,如表9
所示。
表9返回功能
输入
处理
操作
无
无
返回到登录模块,或者直接退出系统。
3.2业务流程分析
本银行账户管理系统的设置是单用户多操作的模式,之前如果没有账户的用户必须先注册开户,之后用户需要用自己的真实姓名登录,确认无误后方可登录到主菜单界面,实现相关业务操作。
主要业务流程如下图1所示。
3.3数据流程分析
图1系统业务流程图
3.3.1系统关联图
本银行账户管理系统直接面向对象是用户,而用户只需要实施对本系统的操作,然后由系统处理数据,并且将相关数据信息反馈给用户,如图2所示。
3.3.2顶层图
图2系统关联图
在系统的后台管理中,必然会涉及到大量数据的存储与读取,那么在数据存储之前就需要对用户提供的数据进行分析校验,只有在符合规范的情况下,将处理后的数据反馈给用户,如图3所示。
数据流图能够简洁的表达出功能需求和数据需求及其联系,如图4所示,用户在注册或者登陆时,经过后台的检验处理,在数据正确无误的情况下,才能办理如存款、取款、转账等相关业务,并且同步更新数据库中数据信息。
3.3.3数据流图
图3系统顶层图
图4数据详细流程图
第4章数据库分析
4.1数据库需求分析
数据库需求分析是数据库结构设计中必不可少的,而且也是要做的第一个阶段,这个阶段主要是要收集基本数据、数据结构以及数据处理的流程等等,组成一份详尽的数据字典[10],为以后进一步设计打下基础。
首先,在仔细调查银行账户管理过程的基础上,同时根据日常用户的基本的业务需求,我们可以得到本系统所要完成实现的用户的业务模块,如图5所示。
图5系统功能模块图
通过对银行账户管理的内容和数据流程的分析,可对用户详细的属性设置描述如下(见表10—表15)。
数据项名称:
id
数据项类型:
整型
数据项长度:
25
可否为空:
不可
是否主键:
是
简述:
银行账户的序号
数据项名称:
name
数据项类型:
文本
数据项长度:
0
可否为空:
不可
是否主键:
否
简述:
进入系统的用户名
表10用户id属性 表11用户name属性
表12用户password属性 表13用户personid属性
数据项名称:
password
数据项类型:
字符型
数据项长度:
25
可否为空:
不可
是否主键:
否
简述:
用户的登录密码
数据项名称:
personid
数据项类型:
字符型
数据项长度:
25
可否为空:
不可
是否主键:
否
简述:
用户的有效证件号
数据项名称:
email
数据项类型:
字符型
数据项长度:
25
可否为空:
可以
是否主键:
否
简述:
用户的电子邮箱
数据项名称:
balance
数据项类型:
浮点型
数据项长度:
25
可否为空:
不可
是否主键:
否
简述:
用户的账户余额
表14用户email属性 表15用户balance属性
4.2数据库概念结构设计
这一设计阶段是在需求分析的基础上,设计出能满足用户需求