ATM自动取款机模拟设计.docx
《ATM自动取款机模拟设计.docx》由会员分享,可在线阅读,更多相关《ATM自动取款机模拟设计.docx(21页珍藏版)》请在冰点文库上搜索。
ATM自动取款机模拟设计
ATM自动取款机模拟设计
一、设计内容
通过ATM柜员级模拟项目的开发,要求学生:
1、进一步熟练GUI界面设计
2、掌握使用GUI中的事件处理与高级GUI设计
3、进一步熟悉java的设计流程,对所学习内容得到更好应用
二、设计要求
(1)功能要:
ATM柜员级模拟项目要要求实现以下功能登陆查询剩余金额:
取款;转帐修改帐户密码查询明细
(2)系统界面要求:
要求系统具有友好的用户界面,界面简洁、操作方便;(3)人数要求:
1-2人次
三、总体设计
待机界面
(密码错误,返回登陆)
(按任意键,进入登录界
I面)
登录界面
号、密码、取消等选
密码错误,请
L从新输入!
(选择“取消”进入“取卡界面”
选择界面
(查询余额、取款、转
帐、修改密码、取消)
查询余额
取款
转帐
修改密码
■丿
交易完成界面
(不同的交易有不同的
「交易完成界面)
(交易完成,选择“其他交易”
返回“选择”界面)
选择“打印”
(选择
(选择“其他交易”返回“选择界面”
凭条
“取消”
打印界面
)
进入
“取卡
界面”)
取卡界面
(谢谢使用,再见!
注:
“查询余额”和“修改密码”无打印界面
四、界面设计
1.在为使用时显示待机界面
2.按任意键进入登录界面,输入正确的帐号和密码。
3.密码输入错误,弹出密码错误界面。
提示从新输入密码。
4•登录成功后进入选择界面,选择需要进行的业务。
根据不同选择进入以下界面
5000元。
选择取消进入取
5.如果选择取款,进入取款界面。
输入取款面额。
提示最高面额为卡界面,选择返回进入选择界面。
6.交易成功后,提示取出现金。
点继续进入选择界面。
点取消进入打印界面。
7.如果选择余额查询界面,显示余额。
并提示可用金额。
8.如果选择转帐,进入转帐界面。
提示输入转帐帐号和确认帐号。
9.交易成功,选择继续进入选择界面,选择取消进入打印界面。
10.如果选择修改密码,进入密码修改界面。
并提示输入新密码和确认新密码。
11.交易成功,选择继续进入选择界面,选择取消进入取卡界面。
12.打印界面,打印取款和转帐交易的信息,选择否跳过。
13.取卡界面,退出交易是弹出。
卡界面
请取出您的磁卡!
谢谢惠顾.欢迎再次使用!
五、类设计
5.1Waiting.java
5.1.1类属性
修饰符
类型
名称
说明
Private
JLabel
Jlabel
欢迎使用ATM自动取款机
Private
JLabel_1
Jlabel_1
按任意键进入登陆界面
5.1.2类事件
发生事件的组件
事件类型
对事件的处理
JFrame
KeyPressed
Logins=newLogin();s.show();
5.2Login.java
5.2.1类属性
修饰符
类型
名称
说明
Private
JLabel
Jlabel
请输入您的卡号:
Private
JTextFiled
textfiled
输入卡号框
Private
JLabel
Jlabel1
请输入您的密码:
Private
JPasswordFiled
passwordfiled
输入密码框
Static
String
username
保存卡号
Private
JButton
button
继续
Private
JButton
button1
取消
Private
Connection
Conn
连接数据库
Private
Statement
Stmt
传送数据库
Private
ResultSet
rs
保存返回的结果集
522类事件
发生事件的组件
事件类型
对事件的处理
button
ActionEvent
Stmt.executeQuery(select卡
、号
fromuserwhere卡
号
='+textFiled.getText()+”'
and
密
码
='+passwordFiled.getText()+”如果用户名、密码正确:
Selects=newSelect();s.show();
否则:
PasswordErrorpwe=new
PasswordError();
Pwe.show();
button_1
ActionEvent
OverO=newOver();
O.show();
5.3PasswordError.java
5.3.1类属性
修饰符
类型
名称
说明
Private
JLabel
Jlabel
您输入的密码不正确,请再次输入!
Private
JButton
button
继续
Private
JButton
button1
取消
5.3.2类事件
发生事件的组件
事件类型
对事件的处理
JButton
ActionEvent
Logins=newLogin();s.show();
JButton_1
ActionEvent
Overo=newOver();o.show();
5.4Select.java
5.4.1类属性
修饰符
类型
名称
说明
Private
JLabel
Jlabel
请选择你需要的交易
Private
JButton
button
查询余额
Static
String
username
保存卡号
Private
JButton
button1
取款
Private
JButton
button2
转账
Private
JButton
button3
修改密码
Private
JButton
button4
取消
Private
Connection
Conn
连接数据库
Private
Statement
Stmt
传送数据库
Private
ResultSet
rs
保存返回的结果集
542类事件
发生事件的组件
事件类型
对事件的处理
JButton
ActionEvent
Stmt.executeQuery(select余额可用余额fromuser_infowhere卡号='
Username');
yuechaxunjiemiany=new
yuechaxunjiemian();
Y.show();
JButton_1
ActionEvent
qukuanq=newqukuan();q.show();
JButton_2
ActionEvent
ZhuanzhangZ=new
Zhuanzhang();
Z.show();
JButton_3
ActionEvent
FixPasswordF=new
FixPassword();
F.show();
JButton_4
ActionEvent
overo=newover();o.show();
5.5yuechaxunjiemian.java
5.5.1类属性
修饰符
类型
名称
说明
Private
JLabel
label
余额:
Private
JLabel
label1
可用余额:
Private
JButton
button
继续
Private
JButton
button1
取消
5.5.2类事件
发生事件的组件
;事件类型
对事件的处理
JButton
ActionEvent
SelectS=newSelect();
S.show();
JButton1
ActionEvent
overo=newover();o.show();
5.6qukuan..java
561类属性
修饰符
类型
名称
说明
Private
JLabel
label
请选择你要提取的金额(单次最咼面额为
2000元)
Private
JButton
button
100元
Private
JButton
button1
300元
Private
JButton
button2
500元
Private
JButton
button3
1000元
Private
JButton
button4
其它面额
Private
JButton
button5
继续
Private
JButton
button6
取消
Static
String
username
保存卡号
Private
Connection
Conn
连接数据库
Private
Statement
Stmt
传送数据库
Private
ResultSet
rs
保存返回的结果集
5.6.2类事件
发生事件的组件
事件类型
对事件的处理
JButton
ActionEvent
Stmt.executeUpdate(Updateuser_infoset可用余额=可用余额-100,余额=余额-100where卡号=Username);QukuansuccessS=new
qukuansuccess();
S.show();
JButton_1
ActionEvent
Stmt.executeUpdate(Updateuser_infoset可用余额
='+Jbutton1.getText()+”'and余额='Jbutton1.getText()+”’where卡号=Username);QukuansuccessS=new
qukuansuccess();
S.show();
JButton_2
ActionEvent
Stmt.executeUpdate(Updateuser_infoset可用余额
='+Jbutton2.getText()+”'and余额='Jbutton2.getText()+”’where卡号=Username);QukuansuccessS=new
qukuansuccess();
S.show();
JButton_3
ActionEvent
Stmt.executeUpdate(Updateuser_infoset可用余额
='+Jbutton3.getText()+”'and余额='Jbutton3.getText()+”’where卡号=Username);QukuansuccessS=new
qukuansuccess();
S.show();
JButton_4
ActionEvent
MoneyshuruM=new
Moneyshuru();
M.show();
JButton_5
ActionEvent
SelectS=newSelect();
S.show();
JButton_6
ActionEvent
OverO=newOver();
O.show();
5.7Moneyshuru.java
5.7.1类属性
修饰符
类型
名称
说明
Private
JLabel
label
请输入您取款金额:
Private
JTextFiled
textField
金额输入框
Private
JButton
button
继续
Private
JButton
button1
取消
Static
String
username
保存卡号
Private
Connection
Conn
连接数据库
Private
Statement
Stmt
传送数据库
Private
ResultSet
rs
保存返回的结果集
5.7.2类属性
发生事件的组件
事件类型
对事件的处理
JButton
ActionEvent
Stmt.executeQuery(UpdateUser_infoset余额=
‘“+textField.getText()+
“'”and可用余额=
+textFiled.getText()+“'”
where卡号=Username);QukuansuccessS=new
qukuansuccess();
S.show();
JButton_1
ActionEvent
OverO=newOver();
O.show();
5.8qukuansuccess.java
5.8.1类属性
修饰符
类型
名称
说明
Private
JLabel
label
取款成功
Private
JLabel
label_1
请在30秒内取出你的现金,谢谢!
Private
JButton
button
继续
Private
JButton
button1
取消
582类属性
发生事件的组件
事件类型
对事件的处理
JButton
ActionEvent
QukuanQ=newQukuan();
Q.show();
JButton_1
ActionEvent
OverO=newOver();
O.show();
5.9zhuanzhang.java
5.9.1类属性
修饰符
类型
名称
说明
Private
JLabel
label
请输入您转入的帐
号:
Private
JTextFiled
textfiled
帐号输入框
Private
JLabel
label_1
请再次输入您要转入的帐号:
Private
JTextFiled
textfiled1
帐号输入框
Private
JButton
button
确认
Private
JButton
button1
取消
Static
String
username
保存卡号
Private
Connection
Conn
连接数据库
Private
Statement
Stmt
传送数据库
Private
ResultSet
rs
保存返回的结果集
5.9.2类属性
发生事件的组件
事件类型
对事件的处理
JButton
ActionEvent
Stmt.executeUpdate(“Updateuser_infoset可用余额='+可用余额-
“+textFiled.getText()+”',余额='"+余额-
“textFiled.getText()+”'where卡号=Username
);
Stmt.executeUpdate(“Updateuser_infoset可用余额='"+可用余额+
“+textFiled.getText()+",”,
"余额='”+余额+
“textFiled.getText()+”'
where卡号
+textFiled.getText()
+
丿,
zhuanruSuccess
zhuanruSuccess();
S1=new
JButton_1
ActionEvent
OverO=newOver();
O.show();
5.10zhuanruSuccess.java
5.10.1类属性
修饰符
类型
名称
说明
Private
JLabel
label
转账成功!
Private
JButton
button
继续
Private
JButton1
button1
取消
5.10.2类属性
发生事件的组件
事件类型
对事件的处理
JButton
ActionEvent
ZhuanzhangZ1=new
Zhuanzhang();
Z1.show();
JButton_1
ActionEvent
OverO=newOver();
O.show();
5.11FixPassword.java
5.11.1类属性
修饰符
类型
名称
说明
Private
JLabel
label
请输入您的新密码:
Private
JLabel
label_1
请再次输入您的密码:
Private
JPasswordFiled
passwordfiled
密码输入框
Private
JPasswordFiled
passwordfiled1
密码输入框
Private
JButton
button
确定
Private
JButton
button1
取消
Static
String
username
保存卡号
Private
Connection
Conn
连接数据库
Private
Statement
Stmt
传送数据库
Private
ResultSet
rs
保存返回的结果集
5.11.2类事件
发生事件的组件
事件类型
对事件的处理
JButton
ActionEvent
Stmt.executeUpdate(update
userset密码
='+textFiled.getText()+”Where卡号=+username+);
FixPasswordSuccessF=new
FixPasswordSuccess();
F.show();
JButton_1
ActionEvent
OverO=newOver();
O.show();
5.12FixPasswordSuccess.java
5.12.1类属性
修饰符
类型
名称
说明
Private
JLabel
label
密码修改成功!
Private
JButton
button
继续
Private
JButton
button1
取消
5.12.2类事件
发生事件的组件
事件类型
对事件的处理
JButton
ActionEvent
SelectS=newSelect();
S.show();
JButton_1
ActionEvent
OverO=newOver();
O.show();
5.13FixPasswordError.java
5.13.1类属性
修饰符
类型
名称
说明
Private
JLabel
label
请重新输入你要设置的密码!
Private
JLabel
label1
请输入您的新密码:
Private
JLabel
label_2
请再次输入您的密码:
Private
JPasswordFiled
passwordfiled
密码输入框
Private
JPasswordFiled
passwordfiled1
密码输入框
Private
JButton
button
确定
Private
JButton
button1
取消
Static
String
username
保存卡号
Private
Connection
Conn
连接数据库
Private
Statement
Stmt
传送数据库
Private
ResultSet
rs
保存返回的结果集
5.13.2类事件
发生事件的组件
;事件类型
对事件的处理
JButton
ActionEvent
FixPasswordF=new
FixPassword();
F.show();
JButton_1
ActionEvent
OverO=newOver();
O.show();
5.14Print.java
5.14.1类属性
修饰符
类型
名称
说明「
Private
JLabel
label
是否打印凭条?
Private
JButton
button
是
Private
JButton
button1
否
5.14.2类事件
发生事件的组件
事件类型
对事件的处理
JButton
ActionEvent
OverO=newOver();
O.show();
JButton_1
ActionEvent
OverO=newOver();
O.show();
5.15over.java
5.15.1类属性
修饰符
类型
名称
说明
Private
JLabel
label
请取出您的磁卡!
Private
JLabel
label_1
谢谢惠顾,欢迎下次使用!
六、数据库设计
User
卡号(key)
密码
Vchar(10)
Vchar(10)
Notnull()
Notnull()
Userinfo
卡号(key)
余额
可用余额
Vchar(10)
Folat
Float
Notnull()
Notnull()
Notnull()