javaATM机银行存取款系统的设计与实现毕业论文.doc
《javaATM机银行存取款系统的设计与实现毕业论文.doc》由会员分享,可在线阅读,更多相关《javaATM机银行存取款系统的设计与实现毕业论文.doc(81页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、.I/81本科毕业论文(设计)本科毕业论文(设计)银行存取款系统的设计与实现银行存取款系统的设计与实现毕业设计(论文)原创性声明和使用授权说明毕业设计(论文)原创性声明和使用授权说明原创性声明原创性声明本人重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作与取得的成果。尽我所知,除文中特别加以标注和致的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得与其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了意。作 者签 名:日期:.II/81指导教师签名:日期:使用授权说明使用授权说明本人
2、完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部容。作者签名:日期:目录引论 11 银行存取款系统概述 11.1 背景 11.2 意义 22 银行存取款系统需求分析 22.1 系统需求 22.2 功能需求 22.2.1 用户注册和登陆功能 2.III/812.2.2 用户存取款转账和查询历史功能 22.3 软件属性需求 22.4 业务流程描述 33.银行存
3、取款系统总体设计 33.1 系统设计概述 33.2 注册 33.3 登录 43.4 存款 43.5 取款 43.6 转账 43.7 查询历史 43.8 退出 44 Oracle 数据库的设计 44.1 Oracle 数据库设计概论 44.2 表的结构设计 54.2.1 用户表 54.2.2 历史表 54.3 PL/SQL 存储过程的设计 64.3.1 用户表存储过程的设计 64.3.2 历史表存储过程的设计 75 银行存取款系统的实现 85.1 用户登陆模块的实现 8.IV/815.1.1 界面样式 85.1.2 功能实现 85.2 新用户注册模块的实现 105.2.1 界面样式 105.2.
4、2 功能实现 105.3 用户操作模块的实现 125.3.1 界面样式 135.3.2 功能实现 135.4 存款模块的实现 155.4.1 界面样式 155.4.2 功能实现 155.5 取款模块的实现 185.5.1 界面样式 185.5.2 功能实现 185.6 转账模块的实现 215.6.1 界面样式 215.6.2 功能实现 215.7 查询历史记录模块的实现 255.7.1 界面样式 255.7.2 功能实现 266 发布程序与分包规 27结论 28.V/81参考文献 29致 29银行存取款系统的设计与实现银行存取款系统的设计与实现摘 要.VI/81计算机科学技术的发展不仅极促进了
5、整个科学的发展,而且明显加快了经济信息化和社会信息化的进程。绝大多数的公司的日常办公已经离不开计算机技术和软件技术。国的银行大都大力发展银行自动取款机(ATM),以提高工作效率和降低成本。本系统采用 Eclipsc 作为开发工具,使用 Java 语言编写,并连接 Oracle 数据库,搭建和模拟银行最常见存款取款转账操作。可实现用户注册、用户登录、用户存款、用户取款、用户转账、查询该用户所有的操作记录的功能。关键词注册;登陆;存取款;转账;历史记录Design and implementation of bank depositand withdrawal systemAbstractThe
6、development of computer science and technology not onlygreatly promotedthe development of science as a whole,andsignificantly speed up the process ofeconomicandsocialinformation.Thevastmajorityofthecompanysday-to-dayofficecan not do without the computer technology and software technology.Domesticban
7、ksMost vigorously development Bankautomated teller machine(ATM),in order toenhance efficiency and reduce costs.Eclipsc The system uses as a development tool of to using the Java language,andconnectto an Oracle database,set up the most common and analog bank depositwithdrawals transferoperation.User
8、registration,user login,the user deposits the.VII/81userwithdrawal,check all operating record of the user.Key wordsRegistration;Login;Deposit;Transfer;History.1/81引论随着市场经济的发展,经济信息化程度的不断深入,银行的传统业务己愈来愈不能满足银行客户的需要。同时,随着国银行机构的大量增加,我国的银行业面临更加激烈的同业竞争,如何提供更多的金融产品和更优质的服务,如何吸引更多的客户,如何利用计算机技术加强银行信息管理,提高银行的工作效
9、率和业务竟争能力是摆在各家银行面前的一个迫切需要解诀的问题。Java 是一个广泛使用的编程语言,是一种新的计算概念。1995 年 Java 的诞生让全世界的程序员为之疯狂。与以往的任何一种语言相比 Java 都有着无可比拟的优势。首先,Java是一种简单、面向对象、分布式、解释、健壮、安全、结构中立、可移植、高效能、动态的语言。目前,Java 已得到了全世界主要计算机软硬件厂商的支持,在计算机领域中得到了广泛应用。本系统选题为基于 Java 程序设计的银行存取款系统,是模拟银行存取款的管理。设计的指导思想是一切为使用者着想,界面要美观大方,操作尽量简单明了,而且作为一个实用的管理系统要有要有良
10、好的容错性,在出现误操作时能尽量与时地给出警告,以便用户与时地改正。鉴于本系统的特殊性,还需要本程序有良好的性。1 银行存取款系统概述1.1 背景随着我国金融电子化建设的深入发展和银行客户对金融服务质量要求的提高,自动柜员(ATM 机)在金融行业的应用越来越广泛,自动柜员机(ATM 机)在拉近客户与银行之间的距离,扩展营业网点,改善用卡环境,提供全天候、全方位的金融服务,降低经营成本,提高金融行业的服务质量和综合竞争实力等方面正发挥着不可替代的作用。.2/811.2 意义对用户来说,自动柜员机(ATM 机)的诞生,使原来必须到银行柜台办理的账务查询、转账等业务,可以在大街小巷的固定取款机前进行
11、办理。对银行来说,自动柜员机(ATM机)的开通,将大大提高工作效率,在方便用户的同时可以节省大量的柜台服务为人员,从而降低生产经营成本。2 银行存取款系统需求分析2.1 系统需求本系统是一套类似于 ATM 机的模拟银行系统存取款管理软件,其采用 C/S 结构来实现,当用户在界面进行存取款操作后,其数据信息会存入数据库,用户也可以选择查询这些信息。2.2 功能需求根据系统的需求分析,本系统的功能要求如下:2.2.1 用户注册和登陆功能新用户必须先注册,注册需要填写用户名和密码;老用户可以输入户名和密码直接登陆,通过读取数据库,获取该用户的信息,如果用户不存在则会提示错误。2.2.2 用户存取款转
12、账和查询历史功能用户登录成功后,可以选择存款、取款、转账或者查询历史记录四项业务,系统会自动进行各种计算,然后将结果返回给用户并将信息存入数据库。2.3 软件属性需求本系统为银行存取款管理系统,要求程序具有一定的可移植,可扩展,安全性、性!.3/812.4 业务流程描述图 1-1业务流程3.银行存取款系统总体设计3.1 系统设计概述本系统使用 Eclipse 作为开发工具,采用 Oracle 作为后台数据库,使用 swing 界面,用户所有的操作信息会自动记录在数据库中,用户界面简单明了,功能严谨合理,务求使用户有好的体验。3.2 注册填写注册信息,注册成功后,把用户信息存进数据库,并自动获得
13、 10000 元存款。新用户老用户登录存款取款转账查询历史启动程序.4/813.3 登录输入名和密码,读取数据库容进行验证,如果存在,登录成功,否则提示无此账户,请确认后重新输入!登录成功后可进行存款取款转账查询历史操作;3.4 存款输入的存款金额进行验证,如输入负数或字母,提示金额错误,否则提示存款成功,存储被修改的余额信息!3.5 取款输入的取款金额进行验证,如输入负数或字母,提示金额错误。取款成功后,存入数据库!当取款金额大于余额,要有提示,并操作不成功。3.6 转账输入对方户名可以进行转账,转账后自己余额减少,对方余额增加。3.7 查询历史显示用户从注册开始的所有操作时间和操作记录。3
14、.8 退出退出系统。4 Oracle 数据库的设计4.1 Oracle 数据库设计概论Oracle Database,简称 Oracle。是甲骨文公司的一款关系数据库管理系统。到目前仍然是全球最流行的数据库。在银行存取款系统的设计中,多次使用了 Oracle 作为存储信息和读取信息的工具。.5/814.2 表的结构设计在银行存取款系统的设计中,我们建立了用户表和历史表用于存储信息;4.2.1 用户表用户表用于存储用户的户名密码余额注册时间信息,当用户注册成功后这些信息会自动记录在数据库中,以便用户查询。表 3-1 用户表字段名数值类型说明HUMINGVARCHAR2(15)用户户名(主键)MI
15、MAVARCHAR2(15)用户密码YUEMUMBER用户余额SHIJIANDATE用户注册时间4.2.2 历史表历史表用于存储用户从注册开始的所有用户操作,历史表中的字段 HUMING 与用户表中的字段 HUMING 是外键关系,以实现 2 个表之间的关联。表 3-2 历史表字段名数值类型说明SHIJIANVARCHAR2(15)用户执行当前操作的时间(主键)HUMINGVARCHAR2(15)用户户名.6/81CAOZUOVARCHAR2(100)当前操作YUEMUNBER操作后用户余额4.3 PL/SQL 存储过程的设计存储极方便了对数据库的增删改查等操作,因此创建与用户表对应的存储过程
16、 P_YH和与历史表对应的存储过程 P_LS。4.3.1 用户表存储过程的设计针对用户表的特点和 JDBC 连接的需要,现设计 P_YH 代码如下:createorreplaceprocedure p_yh(-pl/sql存储过程-用于对用户表-进行 更新密码和余额 操作v_rmark innumber,-判定操作v_huming invarchar2,-户名v_mima invarchar2,-用户密码v_yue innumber-剩余金额)isbeginif(v_rmark=1)theninsertinto yonghu values(v_huming,v_mima,v_yue,sysda
17、te);elsif(v_rmark=2)thenupdate yonghu set mima=v_mima where huming=v_huming;else.7/81update yonghu set yue=yue+v_yue where huming=v_huming;endif;commit;end;4.3.2 历史表存储过程的设计针对历史表的特点和 JDBC 连接的需要,现设计 P_LS 代码如下:createorreplaceprocedure p_ls(-pl/sql存储过程-用于对历史表-进行 存储删除 操作v_rmark innumber,-判定操作v_huming inv
18、archar2,-户名v_caozuo invarchar2,-用户操作v_yue innumber-操作金额)isbeginif(v_rmark=1)then-存储insertinto lishi values(to_char(systimestamp,yyyy-mm-ddhh24:mi:ss),v_huming,v_caozuo,v_yue);elsedeletefrom lishi where huming=v_huming;endif;commit;.8/81end;5 银行存取款系统的实现5.1 用户登陆模块的实现5.1.1 界面样式图 3-1 用户登陆界面5.1.2 功能实现程序启
19、动后调用 Dlact 类,显示用户登陆界面。新用户需要点击注册按钮调转到用户注册界面进行注册,老用户输入户名和密码点击登陆按钮,程序将跳转到用户操作界面。户名和密码错误或者不存在会提示登录失败。该模块主要代码如下:publicclasspublicclass Dlact extendsextends JFrame implementsimplements ActionListenerpublicvoidpublicvoid ff()f.setLayout(nullnull);addWindowListener(newnew WindowAdapter()publicvoidpublicvoid
20、 windowClosing(WindowEvent e).9/81System.exit(0););f.setVisible(truetrue);publicstaticvoidpublicstaticvoid main(Stringagrs)Dlact d=newnew Dlact();d.ff();Overridepublicvoidpublicvoid actionPerformed(ActionEvent e)String s1=t1.getText();String s2=String.valueOf(p1.getPassword();if if(e.getSource()=2)/
21、调用注册界面Zcact z=newnew Zcact();z.ff();elseelse/登陆成功进入用户操作界面Xzact x=newnew Xzact();x.ff(s1,s2);.10/815.2 新用户注册模块的实现新用户在登陆界面点击注册按钮后调转到注册界面,在程序中调用 Zcact 类;5.2.1 界面样式图 3-2 新用户注册界面5.2.2 功能实现新用户输入户名、密码与确认密码。输入两次密码必须一致,不一致提示输入不一致需要重新输入。在程序中定义两个变量 s1 和 s2,判断两个变量的值是否相等。新用户注册成功后,系统将自动存储信息,并有余额 10000 元。该部分主要代码如下
22、:publicclasspublicclass Zcact extendsextends JFrame implementsimplements ActionListenerpublicvoidpublicvoid ff()f.setLayout(nullnull);addWindowListener(newnew WindowAdapter()publicvoidpublicvoid windowClosing(WindowEvent e).11/81System.exit(0););f.setVisible(truetrue);Overridepublicvoidpublicvoid ac
23、tionPerformed(ActionEvent e)String s1=t1.getText();String s2=String.valueOf(p1.getPassword();String s3=String.valueOf(p2.getPassword();System.out.println(s2);if if(!s2.equals(s3)/判断2次密码是否一致JOptionPane.showMessageDialog(nullnull,密码输入不一致);returnreturn;elseelseJOptionPane.showMessageDialog(nullnull,注册成
24、功);Yhvo yvo=newnew Yhvo();/调用Yhvo将数据存入用户表Lsvo lvo=newnew Lsvo();/调用Lsvo将数据存入历史表yvo.setHuming(s1);.12/81yvo.setMima(s2);yvo.setYue(10000);lvo.setHuming(s1);lvo.setCaozuo(注册账号获得10000);lvo.setYue(10000);yvo.setShijian(newnew Date();trytryYhdao.ff2(yvo,1);Lsdao.ff2(lvo,1);catchcatch(ClassNotFoundExcepti
25、on e1)e1.printStackTrace();catchcatch(SQLException e1)e1.printStackTrace();5.3 用户操作模块的实现用户登陆成功后,进入操作选择界面。在程序中应用 Xzact 类。.13/815.3.1 界面样式图 3-3用户主界面5.3.2 功能实现用户登陆成功后,用户可以选择存款、取款、转账、查询历史操作;选择不同的操作会跳转到对应的界面;该部分主要代码如下:publicclasspublicclass Xzact extendsextends JFrame implementsimplements ActionListener
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- javaATM 银行 取款 系统 设计 实现 毕业论文
限制150内