ImageVerifierCode 换一换
格式:DOCX , 页数:60 ,大小:513.41KB ,
资源ID:17996327      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/17996327.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(java课程设计报告自动取款机模拟程序Word格式文档下载.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

java课程设计报告自动取款机模拟程序Word格式文档下载.docx

1、(2)新增的银行卡密码均为“123456”,卡内金额均为0元;(3)只有管理员增加的银行卡才能登陆客户端;(4)删除后的银行卡将不能再登陆客户端。3客户端负责常见的取款机操作。(1)客户端需要登陆,用户输入正确的银行卡号和密码,系统核对无误后才能进行操作;(2)登陆后,用户可以进行查询余额、取款、存款和修改密码的操作;(3)修改密码时,用户需输入两次新密码,确定无误后方可更改;(4)取款和存款操作,有操作结果提示,如“操作成功”或“余额不足,操作失败”等。三、数据库设计 程序中包括用户客户端和管理客户端,所以在数据库中需要设计用户信息表和管理员信息表分别来保存用户信息和管理员信息(数据库采用M

2、ySQL)。表1用户信息表(user)列名数据类型及长度是否为空主键默认值说明cardNumVarchar(12)NO用户帐号passwordInt(6)123456用户密码balanceInt(10)余额表2管理员信息表(admin)adminNameVarchar(10)管理员帐号 passwordadmin管理员密码四、系统设计1、设计框架图一 总体设计框架2、总体设计我所设计的ATM机主要是由登录页面模块还由选择服务模块组成,在登录时可选择用户登录或管理员登陆。其中用户的选择服务模块由取款模块、存款模块、查询余额模块、修改密码模块、退卡模块组成,管理员的选择服务模块由新建用户模块、删除

3、用户模块、退出模块组成。其功能结构图如下所示:图二 用户模块设计框图图三 管理员模块设计框图3 、ATM取款机界面设计我觉得一个系统的界面应该要简单明了,当然样式美观就更好了。我设计的界面主要是由窗体组成,操作简单。而每一个窗口则执行相应的功能。一个系统界面的好坏直接影响到用户的操作,界面设计要求样式美观、简单明了、方便易操作。我设计的界面主要分为窗体、菜单、按钮和文本输入框几个部分,分别执行相应的操作。(1)窗体的设计窗体整个框架使用JFrame类构造,JFrame有自己的外边框和自己的标题,创建JFrame时可以指定其窗口标题,我创建的窗口标题是各个不同功能的模块的名字,比如说查询余额窗口

4、,取款窗口等。(2)窗体的主要结构的设计我所设计的窗口的主要结构的特点就是每个窗口都对应着一个特定的功能。比如说报各种各样的错,还有各种查询余额、取款、选择服务等,所以它们都是由各种按钮和文本框,标签组成的,而联系各个窗体成为一个整体的就是各个按钮的监听事件,另外所有窗口布局均为网格布局。为了定义各个按钮所对应的命令和操作,首先需要将各个按钮注册给实现了动作事件的监听接口ActionListener的监听者,然后为监听者定义actionPerformed(ActionEvent e)方法,在这个方法中调用e.getSource()或e.getActionCommand()来判断用户点击的菜单子

5、项,并完成这个菜单子项定义的操作。4 、各功能模块设计4.1 登录页面模块设计用户进入登录页面后要输入账号和密码,并选择相应的用户,点击确定后系统会通过连接数据库验证密码是否正确,在密码正确的情况下界面跳转到功能选择界面,否则弹出警告账号或密码错误窗口。图四 登录窗口界面我采用的是MyEclipse中的Swing插件所做,简单、方便、实用。文本区调用getText()方法,获取用户想要的字符串。因为要区分登录者是用户还是管理员,所以设置了两个JRadioButton来确定登录者的身份。当登录者选择的身份为用户时通过UserDao类驱动加载数据库,从用户表中获取相关信息并与用户输入信息比较,信息

6、相符时登录成功,否则弹出警告窗口。部分源码如下; /* *管理员登录 */ private void adminLogon() String adminName = userNameTxt.getText(); String password = new String(passwordTxt.getPassword(); if (StrUtil.isEmpty(adminName) JOptionPane.showMessageDialog(null, 账号不能为空!); return; if (StrUtil.isEmpty(password) 密码不能为空! List admins = n

7、ew ArrayListbalance)余额不足! this.setNull(); else if(temp=30000)请到柜台取款 setNull(); else if(generalUser.withdrawingMoney(temp, balance, cardNum)/取款成功、更新数据库取款成功 else取款失败! private void setNull() jWithdrawMoneytxt.setText(4.4 存款模块设计 当用户输入存款金额时,如果输入的不是正确的数字或者整百的金额,会提示用户重新输入;如果用户输入正确,则会提示用户存款成功。图七 存款窗口/* * *

8、param evt /存款金额 int money; if (this.jDisposeMoneytxt.getText().isEmpty() money = 0;InputJudge.isFigure(jDisposeMoneytxt.getText() else money = Integer.parseInt(this.jDisposeMoneytxt.getText(); int temp = money / 100 * 100; if (temp = 0) 请输入正确的金额 if (generalUser.depositMoney(temp, balance, cardNum) 存

9、款成功 else 存款失败 this.jDisposeMoneytxt.setText(4.5修改密码模块设计考虑到银行卡密码为6为数字,用户输入的金额必须为6为数字,否则提示密码格式不正确;另外,用户需要两次输入新密码,且两次要匹配,否则会提示用户两次密码不一致,请重新输入,然后再重新回到修改密码的界面。在修改密码时用到的方法为:图八 用户修改密码窗口 /获取两次密码 String passwordOne = new String(jPasswordOne.getPassword(); String passwordTwo = new String(jPasswordTwo.getPassw

10、ord(); /获取卡号 if (StrUtil.isEmpty(passwordOne) | StrUtil.isEmpty(passwordTwo) /判断两次密码是否为空密码不能为 空 /判断密码是否是六位数字 else if(!(InputJudge.isPassword(passwordOne)|!(InputJudge.isPassword(passwordTwo)密码由6位阿拉伯数字组成 /判断两次密码是否一致 else if (!StrUtil.isEqual(passwordOne, passwordTwo) 两次密码输入不一致! /修改密码成功,更新数据库 else if

11、(generalUser .changePassword(passwordOne, passwordTwo, cardNum) 修改密码成功 /返回主窗口 GeneralUserFrm generalUserFrm = new GeneralUserFrm(); generalUserFrm.setVisible(true);修改密码失败 jPasswordOne.setText( jPasswordTwo.setText(4.6查询余额模块设计查询余额功能是在主操作窗口中实现的,当用户点击查询余额按钮时在下面的文本框中显示出该账号的当前余额。图九 查询余额窗口 public QueryBal

12、anceFrm() this.users = SaveUserInfo.users; /获得卡号 int balance = neralUser.QueryBalance(users.get(0).getCardNum(); initComponents(); this.setLocation(400, 200); this.jBalanceTxt.setText(balance + 4.7管理员操作模块设计管理员登录后可以进行的操作有开户、销户等功能。在开户操作时要先检查新的账户是否已经存在,同时检查新增用户的卡号(12为数字)、密码(6位数字)是否正确;如果密码和余额不填写,默认会添加密码为123456、余额0元。图十 管理员操作窗口图十一 新增用户 if (StrUtil.isEmpty(passwordOne) | StrUtil.isEmpty(passwordTwo) /判断两次密码是否为空图十二 销户窗口 * 刷新 private void jb_refreshActionPerformed(java.awt.event.ActionEvent evt) this.fillTable();

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1