基于JAVA平台的电子银行管理系统.docx
《基于JAVA平台的电子银行管理系统.docx》由会员分享,可在线阅读,更多相关《基于JAVA平台的电子银行管理系统.docx(43页珍藏版)》请在冰豆网上搜索。
基于JAVA平台的电子银行管理系统
毕业论文
题目:
基于JAVA平台的电子银行管理系统
系别:
计算机工程系
专业:
软件技术
学号:
XXXXXX
姓名:
XX
指导老师:
XXXXXX
2011年11月30日
前言
随着科学技术的不断提高,计算机技术日渐成熟,数字化办公所无法比拟的优点检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高员工管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。
其强大的计算功能已经让人们深刻认识到,计算机已进入人类社会的各个领域并发挥着越来越重要的作用。
高等院校作为社会人才培养的重要基地,计算机是高校教学管理中不可或缺的工具。
银行管理系统为用户提供充分的信息管理和方便业务办理功能,能够为客户和管理员提供很大的方便,能够避免长期以来业务办理需客户到银行办理,效率低、投资管理效率低、更新和维护困难的的缺点。
随着互联网的普及,用户网上查询办理业务已不再是神话,相信会有更多的用户对银行业务办理改变认识。
摘要
本论文主要论述的是电子银行管理系统的设计与实现。
系统的主要目的是实现客户查看办理银行业务,以及银行人员对用户数据管理的办公自动化。
首先对客户模块进行了详尽的分析得到客户模块主要完成客户基本信息查看及部分信息修改、更新,查看自己办理的业务,了解银行有哪些业务,申请办理业务。
银行管理维护模块主要完成的是查看、修改所有客户信息、客户业务办理、开户、添加业务等功能。
关键字:
电子银行数据库信息管理
Abstract
Thispapermainlydiscussestheelectronicbankingmanagementsystemdesignandimplementation.Themainpurposeofthesystemdesignistoachievecustomerviewforbanking,andbankpersonneltotheuserdatamanagementofofficeautomation.First,theclientmoduletogetadetailedanalysisofthecustomermoduleofbasicinformationtocompletecustomerviewandmodifysomeoftheinformation,updates,seetheirownforbusinesstounderstandwhatbusinessbanking,applyforbusiness.Bankmanagementandmaintenancemodulestocompletethemainview,modify,allcustomerinformation,handlecustomerservice,account,addservicesandotherfunctions.
Keywords:
E-bank,Database,Informationmanagement
第一章绪论
1.1开发背景
我国银行业计算机系统的引进,从早期的脱机处理系统,到联机处理系统,再到计算机网络支撑下的综合银行处理系统,走过的二十余年的历程,电子银行的普遍应用,已是适应当代人的需求,他从根本上改变传统的工作方式,使银行的经营,管理发生了深刻的变革。
银行的每天的存储量都在一日一日的增加,我们需要一个简单的可以代理人工化的电子银行去实现繁忙的操作,这也是适应我们当代人生活速度的加快,跟上社会的高进程的节奏。
正是基于这样的需要,吸引着我在毕业设计中选择了电子银行管理系统。
在这个信息技术高速发展的背景下,利用软件工程的思想开发一个管理信息系统,开阔了思路,让我们紧跟时代潮流,把握技术大潮的脉搏。
1.2技术背景
1.2.1数据库技术概论
数据库是数据管理的最新技术,是计算机科学的重要分支。
今天,信息资源已成为各个部门的重要财富和资源。
建立一个满足各级部门信息处理要求的行之有效的电子银行管理系统也成为一个企业或组织生存和发展的重要条件。
因此,作为电子银行管理系统核心和基础的数据库技术得到越来越广泛的应用,从小型单项事务处理系统到大型信息系统,从联机事务处理到联机分析处理,从一般企业管理到计算机辅助设计与制造(CAD/CAM)、计算机集成制造系统(CIMS)、办公信息系统(OIS)、地理信息系统(GIS等,越来越多新的应用领域采用数据库存储和处理他们的信息资源[2]。
数据库的研究范围是十分广泛的,概括地讲可以包括以下三个领域:
1.数据库管理系统软件的研制;
2.数据库设计;
3.数据库理论;数据库学;
计算机领域中其他新兴技术的发展对数据库技术产生了重大影响。
数据库技术和其他计算机技术的互相结合,互相深透,使数据库中新的技术内容层出不穷。
数据库的许多概念,技术内容,应用领域,甚至某些原理都有了重大的发展和变化。
建立和实现了一系列新型数据库系统,如分布式数据库系统,并行数据库系统,知识库系统,多媒体数据库系统等。
它们共同构成了数据库系统大家族,使数据库技术不断地涌现新的研究方向。
本系统选用Oracle数据库,原因在于:
ORACLE7.X以来引入了共享SQL和多线索服务器体系结构。
这减少了ORACLE的资源占用,并增强了ORACLE的能力,使之在低档软硬件平台上用较少的资源就可以支持更多的用户,而在高档平台上可以支持成百上千个用户。
提供了基于角色(ROLE)分工的安全保密管理。
在数据库管理功能、完整性检查、安全性、一致性方面都有良好的表现。
支持大量多媒体数据,如二进制图形、声音、动画以及多维数据结构等。
提供了与第三代高级语言的接口软件PRO*系列,能在C,C++等主语言中嵌入SQL语句及过程化(PL/SQL)语句,对数据库中的数据进行操纵。
加上它有许多优秀的前台开发工具如POWERBUILD、SQL*FORMS、VISIABASIC等,可以快速开发生成基于客户端PC平台的应用程序,并具有良好的移植性。
提供了新的分布式数据库能力。
可通过网络较方便地读写远端数据库里的数据,并有对称复制的技术。
Oracle也许是最流行的服务器,占有最大的市场份额,它被广泛用于各个市场领域,满足一系列的存储需求,例如财务记录,人力资源及订单编制等,造成这种现象的原因之一在于Oracle较早的进入RDBMS(关系型数据库管理系统)领域,并且提供可运行于大多数操作系统上的数据库版本,虽然Oracle的首选操作系统似乎正由Solaris转为Linux,但是Oracle仍然在进行与其他操作系统的兼容工作,尽管Oracle经常在Unix或是Linux平台上运行,但是也有大量的Oracle在HP-UX和AIX上运行,随着几年前电子商务的激增,将会驱使Oracle成为WEB应用所需数据库的选择,这使数据库更容易受攻击者的控制。
事实上,一旦Oracle从后台进入前端,那么人们会更多地关注它的安全方面。
1.2.2JAVA技术介绍
Java是由SunMicrosystems公司于1995年5月推出的Java程序设计语言(以下简称Java语言)和Java平台的总称。
用Java实现的HotJava浏览器(支持Javaapplet)显示了Java的魅力:
跨平台、动态的Web、internet计算。
从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Javaapplet。
另一方面,Java技术也不断更新。
Java平台由Java虚拟机(JavaVirtualMachine)和Java应用编程接口(ApplicationProgrammingInterface、简称API)构成。
Java应用编编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。
在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。
现在Java平台已经嵌入了几乎所有的操作系统。
这样Java程序可以只编译一次,就可以在各种系统中运行。
Java应用编程接口已经从1.1x版发展到1.2版。
目前常用的Java平台基于Java6,最近版本为Java7。
第二章电子银行管理系统需求分析
2.1项目概述
管理员对客户信息的管理主要还是客户姓名、性别、出生日期等录入、修改、查询,随着客户办理业务的不断增加,客户的信息也在不停地变化着,原先的手工修改客户及客户办理业务的信息即复杂又不人性化。
客户数量多,工作量很大,尤其对多名客户信息及客户业务信息查找时,更是令人头疼,所以银行管理系统一直是银行信息管理中的一个重要子系统。
好的管理系统可以减少管理人员的工作量,客户也可以及时查看自己的信息,管理员可以快速获得客户的相关资料,掌握客户情况,客户也可以查看自己的业务记录,甚至申请办理业务。
2.2运行环境
该系统为C/S两层结构,它的运行环境分客户端、服务器端。
以下是系统的软件环境:
2.2.1客户端
操作系统:
Windows2000Professional/XP/Window7、Unix或更新版本。
2.2.2服务器端
操作系统:
Windows2000Server/XP/Window7、Unix或更新版本。
数据库访问:
JDBC。
2.3系统的可行性研究
2.3.1技术可行性
随着国内软件开发的日益发展壮大,各种中小企事业单位已具备独立开发各种类型的软件的能力,能够满足不同行业的特别的需求。
而这个系统尽管其在组织关系上存在着很大的复杂性,繁琐性,但是就整个系统的技术构成上来看,它还是属于一个数据库应用类的系统。
其基本操作还是对存在数据库进行添加、删除、查找、编辑等。
所以就单纯的数据库应用来看,暂不存在太大的技术问题。
2.3.2经济可行性
对于整个系统而言,在系统未运行之前,初期投资比较大,花费相对而言比较多。
各部门必须配置电脑、服务器、打印机、传真机及相关的网络设备,但是在整个系统投入运行之后,因为现在计算机已经普及了,相关的人员培训费可以减少很多。
而同时又减少了数据的流通环节,不必要花费那么多的时间,也就是说最重要的是就是提高了效率,而又保证了各项数据的准确性,也避免了工作人员的流动造成的收据丢失等问题,适应了当前的发展形式。
2.3.3管理可行性
随着时代的发展,人员素质己逐步提高,不论是对于电脑系统的基本操作还是对于系统的维护都有了一定的基础。
同时还可以配置专业的电脑维护人员来维护电脑,不必担心电脑故障问题。
2.3.4开发环境可行性
Eclipse是一个开发源码项目,它其实是VisualAgeforJava的替代品,其界面跟先前的VisualAgeforJava差不多,但由于其开放源码,任何人都可以免费得到,并可以在此基础上开发各自的插件,因此越来越受人们关注。
近期还有包括Oracle在内的许多大公司也纷纷加入了该项目,并宣称Eclipse将来能成为可进行任何语言开发的IDE集大成者,使用者只需下载各种语言的插件即可。
2.4系统目标
我们一般设计系统都要完成以下的几个要求,以便于用户进行操作。
这样才能使系统易学易用。
2.4.1合理的设计数据库
尽量合理地减少数据库数据的冗余,使重复的数据保持在最小限度,这样将不必要的多占用存储空间,减少产生混乱影响的危险,还能提高计算机运行速度。
2.4.2设计出友好的界面
界面的友好与否是用户评价一个软件优劣的重要方面之一,使用户有一个良好的心情。
另外窗口界面要多用按钮和快捷键,少用菜单,窗口的各个控件布局要合理,美观。
要充分的利用Eclipse提供的强大的功能,多用窗口和控件,充分体现窗口的多元化格局。
2.4.3实现基本功能和一些特殊功能的操作
该系统要求除了能实现信息的录入,删除,插入,更新,打印等基本功能之外,还要求能够根据用户的需要进行操作。
第三章电子银行管理系统系统设计
3.1功能设计
图3-1银行管理系统客户功能架构图
图3-2银行管理系统管理员功能架构图
3.2系统角色
本系统主要用于处理/办理银行业务的以下两类人员:
(1)管理员,完成对客户的业务的处理,例如,更改用户状态、系统登录、业务添加、用户注册、客户详细信息查看、修改客户信息、查看客户所办业务、办理业务、根据某一条件查询客户。
(2)客户,系统登录、用户注册、修改密码、客户详细信息查看、修改客户信息、查看客户所办业务、申请办理业务、查看银行所有业务。
图3-3用例图
第四章数据库设计
4.1数据库设计概述
数据库是数据管理的最新技术。
十多年来数据库管理系统已从专用的应用程序发展成为通用的系统软件。
由于数据库具有数据结构化,最低冗余度,较高的程序与数据独立性,易于扩充,易于编制应用程序等优点,较大的信息系统都是建立在数据库设计之上的。
因此不仅大型计算机及中小型计算机,甚至微型机都配有数据库管理系统。
数据库系统的出现使信息系统从以加工数据的程序为中心转向围绕共享的数据库为中心的新阶段。
这样既便于数据的集中管理,又有利于应用程序的研制和维护,提高了数据的利用性和相容性,提高了决策的可靠性。
目前,数据库已经成为现代信息系统不可分割的重要组成部分。
数据库技术也是计算机领域中发展最快的技术之一。
数据库设计是把现实世界的实体模型与需求转换成数据库的模型的过程,它是建立数据库应用系统的核心问题。
数据库及其应用的性能都建立在良好的数据库设计的基础之上,数据库的数据是一切操作的基础,如果数据库设计不好,那么其它一切用于提高数据库性能的方法收效都是有限的。
数据库设计的关键是如何使设计的数据库能合理地存储用户的数据,方便用户进行数据处理。
设计数据库必须遵循一定的规则,在关系型数据库中,这种规则就是范式,范式是符合某一种级别的关系模式的集合。
一般人们设计数据库遵循第三范式。
即:
数据库表中不包含已在其他表中包含的非主关键字信息。
采用范式减少了数据冗余,节约了存储空间,同时加快了增、删、改的速度。
4.2数据库需求分析
整个系统所包括的管理员账户、管理员密码、账户号、账号、密码、姓名、性别、身份证号码、注册账户日期、联系地址1、联系地址2、邮箱、联系电话、手机、储蓄额、客户状态、业务号、业务名称、业务描述、流水号、开通时间、投资额、收益、业务是否有效。
数据结构:
T_manage管理员表(--管理员账户—管理员密码--)
T_User用户信息表(--账户号--账号--密码--姓名--性别--身份证号码--注册账户日期--联系地址1--联系地址2--邮箱--联系电话--手机--储蓄额--客户状态--)
T_business业务表(--业务号--业务名称--业务描述--)
T_Service中间业务表(--流水号—开通时间--投资额--收益--业务是否有效—业务号—账户号--)
4.3数据字典
数据字典是在系统数据流程图的基础上。
进一步定义和描述所有的数据项、数据结构、数据存储、处理过程和外部实体的详细逻辑内容与特征的工具。
数据字典的任务是对于数据流程图中出现的元素的名字都有一个确切的解释。
本系统的数据字典如下:
4.4数据库的完整性和安全性
数据库的完整性是指数据的正确性和相容性。
数据库管理系统(DBMS)用一定的机制来检查数据库中的数据是否满足规定的条件——完整性约束条件,数据的约束条件是语义的体现,将作为模式的一部分存入数据库中。
本系统中定义了表与表之间的联系及表中各字段属性约束有助于实现有助于完整性。
数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄漏、更改或破坏。
在数据库系统中,大量的数据集中存放,而且为许多用户直接共享,是宝贵的信息资源,系统的安全保护措施就显得更为重要,它可以保护数据库防止恶意的破坏和非法的存取。
在系统中,用户通过打开软件后,必须经过注册登陆,方可对自己的注册好的账户内容进行查看、检索等操作。
用户注册的身份证号是唯一的,密码通过加密。
在用户登陆,必须输入用户名和密码,并通过数据库的验证,同时对用户的权限进行验证,防止非法用户和未授权用户对本站进行非法访问和操作,保证本站的安全。
第五章系统代码的实现
5.1用户注册信息
使用者:
客户
目的:
新增用户的基本信息。
基本事件流:
1、客户登陆系统,点击“注册新用户”按钮,进入注册用户信息界面,本用例开始;
2、系统显示用户信息输入界面,用户输入用户的账号、密码、姓名、性别、身份证号码、邮箱、固定电话(可不填)、手机号、联系地址1、联系地址2(可不填)等信息。
3、客户输入完成并点击“提交”按钮后,系统检查客户的信息是否完整(所有前面带”*”项目必填,如有些信息格式要求不明白,请查看下面文档)客户的账号是否唯一,若信息完整并且编号唯一,则系统增加客户信息并提示信息新增成功,新增客户界面关闭并返回原信息列表,本用例结束。
否则,提示客户重新输入。
图5-1注册功能实现图
<用户注册>的关键代码,身份的注册必须是18位的号码,关键代码如下:
btn.addActionListener(newActionListener()
{
@Override
publicvoidactionPerformed(ActionEvente)
{
//TODOAuto-generatedmethodstub
if(e.getSource()==btn)
{
if(txtName.getText().equals(""))
{
JOptionPane.showMessageDialog(LoginFrame.this,"请输入字符",
"确认",JOptionPane.ERROR_MESSAGE);
return;
}
if(txtCard.getText().length()==18)
{
}
else
{
JOptionPane.showMessageDialog(LoginFrame.this,
"请输入有效的身份证号","确认",JOptionPane.ERROR_MESSAGE);
return;
}
银行的密码是数字,而且必须是6位的,程序代码如下:
if(txtpassword.getText().length()==6)
{
Stringstr=txtpassword.getText();
booleanboo=LoginFrame.this.passEstimate(str);
if(boo==true)
{
}
else
{
JOptionPane.showMessageDialog(LoginFrame.this,
"请输入6位的密码位数字","确认",
JOptionPane.ERROR_MESSAGE);
return;
}
}
else
{
JOptionPane.showMessageDialog(LoginFrame.this,"请输入密码",
"确认",JOptionPane.ERROR_MESSAGE);
return;
}
if(txtpassword1.getText().equals(txtpassword.getText()))
{
}
else
{
JOptionPane.showMessageDialog(LoginFrame.this,
"输入的密码不正确,请重新输入","确认",
JOptionPane.ERROR_MESSAGE);
txtpassword1.setText("");
return;
}
5.2用户登录信息
使用者:
客户,管理员
目的:
用户登录基本信息。
基本事件流:
1、用户登陆系统,用户在用户登陆界面正确输入用户账号、用户密码且用户账号经管理员审核修改为正常状态,点击”登录”按钮。
2、程序连接数据库查询账户,比对密码。
密码正确进入客户界面。
图5-2登录功能实现图
用户登录关键代码如下:
@Override
publicvoidactionPerformed(ActionEvente)
{
//注册
if(e.getSource()==btnOAA)
{
newLoginFrame();
}
//登录时判断密码格式,用户名格式
if(e.getSource()==btnLogin)
{
if(radioOrdinary.isSelected()==true)
{
Stringstr=newString(pasAcpassword.getPassword());//将密码转换成String
booleanboo=newPasswordEstimate().passEstimate(str);
if(boo!
=true)
{
JOptionPane.showMessageDialog(this,"密码输入格式错误(数字0~9)",
"密码错误!
",JOptionPane.ERROR_MESSAGE);
}
elseif(str.length()!
=6)
{
JOptionPane.showMessageDialog(this,"密码输入个数错误",
"密码错误!
",JOptionPane.ERROR_MESSAGE);
}
else
{
if(txtAcID.getText().length()==13)
{
StringsAcID=txtAcID.getText();
StringsAcIDing="";//用户名后的数字
StringsAcID3="";//用户名前的字
StringBuffersbAcID=newStringBuffer(sAcID);
StringBuffersbAcID2=newStringBuffer(sAcID);
sAcIDing=sbAcID.delete(0,5).toString();
sAcID3=sbAcID2