1、金融保险银行自动取款系统(金融保险)银行自动取款系统数据库课程设计*银行自动系统学院:专业:姓名:指导老师:前言【摘要】自动化技术是当代发展迅速,应用广泛,最引人瞩目的高技术之壹。银行ATM取款机系统是自动化应用于银行金融业务的典型事例。随着经济的不断发展,人们对于银行的交易量要求增高,相对于繁忙的银行柜台业务及繁琐的交易手续来说,ATM取款机系统充分发挥了其自动化的特征。且由于其便于安装,在很大程度上给银行客户提供了方便快捷的服务,使得自动取款机系统越来越受人们的青睐。本文在总结人们熟悉的ATM操作的基础上,分析其具体需求,提出系统的总体设计目标、系统总体架构和功能模块的设计。采用JSP+J
2、avaBean的模式来构建系统。系统使用具体的权限设置等逻辑功能,使得系统的安全性、可维护性、重用性和可扩展性都大大提高。【技术背景和发展状况】随着自动化系统在人们生活中越来越广泛及有效的应用,银行ATM自动取款机系统从当初逐步进入人们的视野,到今天在城市的各个角落都有其身影及使用者,它在人们的理财生活中发挥了重要的作用。第壹台ATM机于1967年6月27日出当下伦敦北部的巴克莱银行。由于只需要把卡片插入自动取款机,且输入户头密码及取款额,自动取款机就能很快送出现款。极大的方便了银行用户及工作人员。1987年,中国银行在上海安装中国第壹台ATM机,数月内不见有人取钱,直至ATM机的工作效率开始
3、引起人们的兴趣。当下已有首台驾车提速自动取款机落户北京。如今,ATM机在迅速的发展,且由于使用客户的增多,对其安全性等方面的要求也逐渐提高,但按其本质来说,仍是银行数据库和人员(包括用户和银行管理人员)操作紧密联系的过程。本文将搭建壹个ATM操作平台和银行后台管理的平台。【关键词】Postgres,MVC,JavaBean,ATM,客户,管理者,账户交易前言1壹 系统分析11.1 需求分析21.2 可行性分析2二 总体设计22.1 项目规划22.2 系统功能结构图3三 系统设计53.1 设计目标53.2 开发及运行环境53.3 数据库设计53.3.1数据库需求分析.43.3.2数据库概念结构设
4、计.43.3.3数据库逻辑结构设计.43.3.4数据库的生成和配置.4四 经理管理界面功能模块详细设计84.1 *银行用户选择登陆模式界面84.2 用户登录模块设计84.3 经理管理客户帐户功能模块设计84.4 英文管理界面模块设计9五 用户操作界面功能模块详细设计105.1 *银行客户登陆模式设计105.2 客户操作功能模块设计125.3英文客户操作功能模块设计.13六组件的编写.156.1公用模块.156.1.1数据库的连接.156.1.2字符处理.156.2信息实体.156.2.1银行客户实体156.2.2服务经理信息实体156.3管理信息实体.166.3.1管理用户登录.166.3.2
5、管理用户信息16七相关技术配置.157.1开发环境配置157.2系统安装配置15附录A参考文献.17附录B数据表.18八*银行自动取款系统实验总结15壹系统分析1.1需求分析经过客户长期使用银行自动取款系统的需求分析,确认银行ATM机系统应具有如下功能:客户界面部分提取金额查询账户信息修改密码其中最重要的是每壹步所必须设置的用户权限,即银行操作的安全性要求。管理界面部分查询客户余额查询客户密码柜台操作后修改客户金额修改用户密码增加新用户删除客户账户其中对客户账户所进行的修改都是已由客户授权,或是按银行系统的功能对其进行相关操作。由此每壹个客户都有壹个其所属的服务经理,负责该账户信息在银行管理后
6、台的更新。1.2可行性分析自动取款系统为用户操作提供了信息查询,账户操作,修改密码等功能,且提供了管理人员对账户相应的管理措施。银行ATM机最重要的要求是安全性。其功能应全面,且重在实时操作性。此外考虑银行客户的多样性,本文为用户提供了中英文俩个使用界面,其使用功能壹样,只是针对使用不同语言的用户。通过对ATM机之上使用需求的分析,本文所搭建的汇旗银行自动取款系统有其可行性。二总体设计2.1项目规划ATM机自动取款系统是银行的专业服务系统,它由用户操作界面和后台管理界面俩部分组成。用户操作界面。主要涉及查询用户个人信息,查询密码,提取金额等功能。由于银行安全性要求,且自动取款系统的主要目的功能
7、为方便用户提取现金。除了密码修改的实时性需求外,用户自身不能在ATM机上修改其他个人信息,此项功能由其服务经理在管理后台实现。经理管理界面。管理人员操作主要包括查询客户余额,查询客户密码,柜台操作后修改客户帐户金额,修改客户密码,增加新的用户,删除客户帐户。2.2系统功能结构图根据之上分析画出系统的功能模块即客户操作界面和经理管理界面图。客户操作界面功能结构图,如图1所示。图1用户操作界面的功能结构图后台管理界面功能结构如图图2后台管理界面功能结构图系统结构图如图3所示。图3系统结构设计图三系统设计3.1设计目标汇旗银行自动取款系统将对之上功能需求进行实现3.2开发及运行环境硬件平台:CPU:
8、IntelCeleronMProcessor;内存:512MB之上。软件平台:操作系统:WindowsXP;数据库:Postgres8.1.2;开发工具包:JDKVersion5.0,Eclipse3.1;JSP服务器:Tomcat4.1;浏览器:IE6.0;分辨率:最佳效果1024*768像素。3.3数据库设计3.3.1数据库需求分析银行用户的需求具体体当下帐户信息的提供、保存、更新和查询上,这就要求数据库结构能充分满足各种信息的输入和输出。收集基本数据、数据结构及数据处理的流程,使操作人员能按自己的需求对数据库记录信息进行操作。通过上述系统功能分析,针对ATM自动取款系统的使用,总结出如下
9、的需求信息。ATM机用户分为银行客户和管理员用户。每壹个客户都有服务经理为其服务,即每个客户从属于壹个服务经理。壹个用户在ATM机上只能对自己的账号金额及密码进行操作。壹个用户对应壹张用户列表。壹张用户列表对应多个用户。通过之上对系统功能和需求的分析,设计如下面的数据项和数据结构。1服务经理信息:用户帐号、密码2银行客户:为其服务的经理账号、用户帐号、用户名、账户金额、密码3.3.2数据库概念结构设计得到自动取款系统的数据项和数据结构以后,能够设计出能够满足用户需求的各种实体以及实体间的联系,为后面的逻辑结构设计打下基础。这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。通过之上设计
10、规划,得出实体有:服务经理信息实体、银行客户信息实体。其中用户通过取款对自己的帐户进行操作。实体之间关系的E-R图如图4所示。图4实体间关系的E-R服务经理信息实体的E-R图如图5所示。客户信息实体的E-R图如图6所示。四经理管理界面功能模块详细设计4.1汇旗银行用户选择登陆模式界面用户选择登陆模式界面没有涉及到具体的数据库操作,用户首先根据自己使用的语言选择中文或英文登陆页面,且随后根据自己的身份选择经理登陆或客户登陆。本文先选择中文操作界面对系统进行阐释,中英文对应界面的操作功能相同。为了提高代码的可操作性,用壹个简单的JSP文件bankindex.jsp实现首页的页面效果。4.2用户登录
11、模块设计用户登陆时系统将输入的帐号和密码和数据库连接。关键sql操作语言及java代码如下:Stringurl=jdbc:postgresql:/localhost/postgres;Stringuser=postgres;Stringpassword=dbms;Stringq=SELECTsuperm_num,super_passwordFROMsuper_managerwheresuperm_num=+name_m+ANDsuper_password=+password_m+;Class.forName(org.postgresql.Driver).newInstance();Connec
12、tioncon=DriverManager.getConnection(url,user,password);Statementstmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);ResultSetrs=stmt.executeQuery(q);4.3经理管理帐户功能模块设计服务经理登陆后有查询余额,查询密码,修改金额,修改密码,新增用户,删除用户等功能模块选项。以查询余额为例,sql语言如下:Class.forName(org.postgresql.Driver).newIn
13、stance();Connectioncon=DriverManager.getConnection(url,user,password);Statementstmt3=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);Stringsql=selectsuperm_num,card_num,user_name,cashfromcustomswherecard_num=+card_n+;stmt3.executeQuery(sql);ResultSetrs=stmt3.executeQu
14、ery(sql);以新增用户功能为例,其模块结果如图:4.4英文管理界面模块设计英文界面适用于使用语言非中文的用户,满足银行用户多样化的特征。其实现原理同其对应的中文管理界面。五用户操作界面功能模块详细设计5.1汇旗银行客户登陆模式设计其关键代码如下:Stringurl=jdbc:postgresql:/localhost/postgres;Stringuser=postgres;Stringpassword=dbms;Stringq=SELECTcard_num,custom_passwordFROMcustomswherecard_num=+stunum+ANDcustom_passwor
15、d=+spassword1+;Class.forName(org.postgresql.Driver).newInstance();Connectioncon=DriverManager.getConnection(url,user,password);Statementstmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);ResultSetrs1=stmt.executeQuery(q);5.2客户操作功能模块设计客户登陆界面后,通过帐号和密码和数据库连接,对自己的帐户进行操作
16、,包括查询信息,提取现金,修改密码基本操作。Sql语句:updatecustomssetcash=cash-+money_i+wherecard_num=+card_i+其中参数为用户输入的提取金额;Updatecustomssetpassword=+password_i+wherecard_num=+card_i+参数为用户输入的新密码,用户需要输入新密码,且再次确认后才能成功修改。提取现金后数据库中数据会相应变化,且将结果显示至用户操作的界面。5.3英文客户操作功能模块设计类似于经理管理英文界面操作功能:英文界面适用于使用语言非中文的用户,满足银行用户多样化的特征。其实现原理也同其对应的中
17、文管理界面。六组建的编写6.1公用模块6.1.1数据库的连接1JDBC(JavaDatabaseConnection)驱动JDBC驱动的获取用静态方法Class.forName().Example:importjava.sql.*;StringjdbcDriverName=org.postgresql.Driver;Driverdriver=(Driver)Class.forName(jdbcClassName).newInstance();DriverManager.registerDriver(driver);2连接数据库JDBC驱动载入后,能够用Connection类建立和数据库的连接
18、连接时必须指定URL,数据库用户及其密码URL的格式:jdbc:postgres:/locahost:port:dbname?param=value Example:Stringurl=”jdbc:postgresql:postgres”;Stringuser=”postgres”;Stringpass=”dbms”;Connectiondbcon=DriverManager.getConnection(url,user,pass); 打开的连接需要关闭时调用:dbcon.close().3. Statement类用于执行无参SQL语句 首先createStatementStatementst
19、=dbcon.createStatement(); 更新Update:intnrows=st.executeUpdate(sqlStr); 查询Select:得到结果集ResultSetrs=st.executeQuery(sqlStr);注:sqlStr是你要查询或修改数据库所写SQL语句。4. 查询的结果是壹个集合,能够使用游标从ResultSet对象中壹次取壹行Stringrfname,rlname;while(res2.next()num=rs.getString(num);password=rs.getString(password);System.out.println(num+p
20、assword);6.1.2字符处理的编写主要方法:publicstaticStringtoHtml(Strings);PublicstaticStringstrReplace(StringsBody,StringsForm,StringsTo);PublicstaticStringparseReturn(StringsBody,StringsEndwith);PublicstaticStringtoHtmlInput(Stringstr);PublicstaticStringtoSql(Stringstr);6.2信息实体6.21银行客户信息实体银行客户信息实体6.22服务经理信息实体服务经
21、理信息实体:数据结构为帐号和密码6.3管理信息实体6.3.1管理用户登录Super_manager:sqlStr=”select*fromsuper_managerwheresuperm_num=+name_m+ANDsuper_password=+password_m+;Custom:sqlStr=”select*fromcustomswherecard_num=+stunum+ANDcustom_password=+spassword1+;6.3.2管理用户信息1在数据库用户表中增加新的用户sqlStr=insertintocustoms(superm_num,card_num,custo
22、m_password,user_name,cash)values(+tnumber+,+snumber+,+password1+,+sname+,+money+);2在数据库用户表中删除某壹存在的用户sqlStr=deletefromcustomswherecard_num=+card_n+;3在客户信息实体中更改某壹属性SqlStr=updatecustomssetcustom_password=+card_pass+wherecard_num=+card_n+;sqlStr=updatecustomssetcash=cash+money_i+wherecard_num=+card_numb
23、er+;七相关技术的配置7.1开发环境配置一、 数据库的安装PostgreSQL8.1在Windows2000/XPFAT32的安装步骤:1.启动安装,修改默认安装目录,例如改为c:pgsql,在安装为服务时不选,即只安装程序,不初始化数据库,也不安装为服务。2.在启动控制面板/管理工具/计算机管理/本地用户和组,增加壹个普通用户,如postgres,密码123,设为永不过期。3.系统环境变量的PATH增加c:pgsqlbin。4.以Administrator身份进入command窗,输入命令runas/user:postgrescmd,输入密码,成功后进入c:pgsql。输入命令initdb
24、-EUTF-8-Ddata。5.以Administrator再次身份进入command窗,输入命令:pg_ctlregister-Npostgres-Dc:pgsqldata-Upostgres-P1236.如5成功,启动控制面板/管理工具/服务,能够见到名为postgres的服务。将其启动类型改为手动,在属性/登录标签下输入密码和确认密码123。7.启动服务。8.以postgres身份输入命令psql可进入客户端。二、 Java开发包1下载Java开发包jdk-1_5_0_05-windows-i586-p.exe2下载完成后,即可安装到D:JDK目录下(安装目录能够是自选目录)。3配置环境
25、变量如下:JAVA_HOME=D:JDKPATH=%JAVA_HOME%bin;%JAVA_HOME%lib;%JAVA_HOME%jrelib;CLASSPATH=%JAVA_HOME%lib;%JAVA_HOME%jrelib;4.检测是否安装成功:在command窗口中,输入命令:javac三、 IDE集成开发环境下载软件eclipse-SDK-3.1.2-win32.zip直接解压即可运行。如解压到D:Eclipse四、 应用服务器1. 下载软件jakarta-tomcat-4.1.31.exe2. 双击安装(直接按照提示安装)将安装路径改为你喜欢的路径如:D:Tomcat3. 设置环
26、境变量:新建环境变量TOMCAT_HOME=D:Tomcat4. 检测是否安装成功:启动服务器,在浏览器中输入http:/localhost:8080/如能见到Apache的主页,则安装成功。7.2系统安装配置1将源程序文件夹Bank复制到目录:D:work。能够是任选目录,但如下配置也要做相应修改。2修改Tomcat的conf目录下的server.xml文件,增加相应的标签:3修改Tomcat的conf目录下的web.xml文件,将invoker的servletmapping前后注释去掉。!-invoker/servlet/*-4配置完成测试。启动Tomcat,URL为:http:/localhost:8080/Bank。七汇旗银行自动取款系统实验总结
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1