JAVA_ATM机毕业课程设计报告图形化界面 下载本文

内容发布更新时间 : 2024/5/6 16:47:34星期一 下面是文章的全部内容请认真阅读。

(此文档为word格式,下载后您可任意编辑修改!) ATM取款机系统(JAVA) 1 课程设计的目的 此次课程设计让我对JAVA有了更深刻的认识,这次课程设计的主要目的是结合面向对象程序设计课程,培养我们面向对象软件开发的思维,初步了解软件开发的一般流程,提高用JAVA编程的实际动手能力并增强大家对面向对象的了解,对以后在面向对象的编程中奠定基础。 2 系统总体设计 2.1 数据库设计 在ATM取款机系统中,数据库的设计也很重要,数据库的好坏会影响到整个系统的运行效率,在此次设计中,atm数据库包括有以下1个表,客户信息表(guest)。 表1客户信息表(guest) 列名 id gid pwd gmoney 数据类型及长度 数字 文本 文本 货币 是否为空 NO NO NO NO 主键 主键 说明 记录号 银行卡号 密码 钱数目 2.2系统功能模块划分 本系统主要包括登陆模块设计,选择服务模块设计,取款模块设计,修改密码模块设计,退卡模块设计等几个功能模块。其中, (1)登陆模块设计:与ATM柜员机打交道比较多的,也是大家对安全比较关心的问题:密码。所以第一个界面就是要输入密码和卡号才能继续服务。 (2) 选择服务模块设计:在选择服务模块中,有各种ATM的服务功能,只要用户在该界面中选择按钮,它就会弹出各个相应的界面。 (3) 取款模块设计:在取款模块中,和其他的界面也是同样的结构。也是有一个文本框和一个按钮还有标签组成的,实现用户取款的服务。 1 (4) 修改密码模块设计:在修改密码模块中,首先你必须要输入你的旧密码是否正确,否则就会报错。再一个就是要两次输入你的新密码,且两次要匹配,否则也会报错,然后再重新回到修改密码的界面。 (5) 退卡模块设计:此功能非常简单,仅仅是实现弹出卡的功能。 2.3 ATM取款机系统功能结构图 总体设计中最核心的问题是系统总体功能结构的确定和子系统与模块的划分,结构化。 ATM取款机系统功能结构图,如图1所示: 图1 ATM取款机系统功能结构图 该ATM取款机系统各个部分负责的主要业务如下: (1) 登陆页面模块,对取款者进行身份验证。 (2) 选择服务模块 ,包括取款,余额查询,转帐,修改密码,退出等功能模块。 (3) 取款模块,实现取款的具体操作。 (4) 查询余额模块,查看当前登陆人员的余额。 (5) 修改密码模块,可以方便的实现当前登陆人员对自己的密码进行修改。 (6) 退卡模块,完成取款,查询等功能后退出银行卡。 3详细设计 在这次系统设计过程中,我把详细设计介绍如下: 配置好环境,编译程序,当程序运行后,首先看到的页面银行管理系统页面,它的运行效果图,如图2所示: 图2银行管理系统首界面 2 登陆页面模块设计:定义了文本框类的对象tf1,tf2。主要是用于输入单行的文本;文本区调用public String getText()方法,获取用户想要的字符串。用来判断输入的密码和卡号是否正确,如果不正确的话,则弹出密码或卡号错误的警告框,并用dispose()关掉窗口。此模块相应的详细源代码见附录部分,部分代码如下: box1= Box.createVerticalBox; box1.add(new Label(\请输入你的卡号\输入卡号 box1.add(Box.createVerticalStrut(8)); box1.add(new Label(\请输入你的密码\输入密码 选择服务模块设计:在选择服务模块中,有各种ATM的服务功能,只要用户在该界面中选择按钮,它就会弹出各个相应的界面。每一个按钮都有监听器,在选择了按钮后,java.awt.event中的ActionEvent类创建一个事件对象,并将它传递给方法public void actionPerformed(ActionEvent e)中的参数e,监视器就会知道所发生的事件,对此事件进行处理。其中的详细源代码请参见附录部分,部分代码如下: this.setLayout(null); this.setLayout(new GridLayout(6,1)); p.add(new Label(\请选择你要的服务\this.add(p); 取款模块设计:在取款模块中,和其他的界面也是同样的结构。也是有一个文本框和一个按钮还有标签组成的。用户在文本框中输入他想取的数额,但是必须是100的倍数,而且每一次最多只能取5000块。当然了取款的时候也不能超过卡里的余额,再就是卡里的余额不能为负,否则就会弹出报错的窗口。其方法的具体实现代码请参见附录部分,部分代码如下: if((money0!=0)||(money>=5000)){取钱数为100的倍数或不大于5000 } act.set_Balance(money);重置余额 this.setVisible(false); dispose(); ErrorWarn6 ew6 = new ErrorWarn6(\消息!\ 修改密码模块设计:在修改密码模块中,首先你必须要输入你的旧密码是否正确,否则就会报错。再一个就是要两次输入你的新密码,且两次药匹配,否则也会报错,然3