java实训ATM取款机设计报告Word格式.docx

上传人:b****4 文档编号:6496778 上传时间:2023-05-06 格式:DOCX 页数:26 大小:21.83KB
下载 相关 举报
java实训ATM取款机设计报告Word格式.docx_第1页
第1页 / 共26页
java实训ATM取款机设计报告Word格式.docx_第2页
第2页 / 共26页
java实训ATM取款机设计报告Word格式.docx_第3页
第3页 / 共26页
java实训ATM取款机设计报告Word格式.docx_第4页
第4页 / 共26页
java实训ATM取款机设计报告Word格式.docx_第5页
第5页 / 共26页
java实训ATM取款机设计报告Word格式.docx_第6页
第6页 / 共26页
java实训ATM取款机设计报告Word格式.docx_第7页
第7页 / 共26页
java实训ATM取款机设计报告Word格式.docx_第8页
第8页 / 共26页
java实训ATM取款机设计报告Word格式.docx_第9页
第9页 / 共26页
java实训ATM取款机设计报告Word格式.docx_第10页
第10页 / 共26页
java实训ATM取款机设计报告Word格式.docx_第11页
第11页 / 共26页
java实训ATM取款机设计报告Word格式.docx_第12页
第12页 / 共26页
java实训ATM取款机设计报告Word格式.docx_第13页
第13页 / 共26页
java实训ATM取款机设计报告Word格式.docx_第14页
第14页 / 共26页
java实训ATM取款机设计报告Word格式.docx_第15页
第15页 / 共26页
java实训ATM取款机设计报告Word格式.docx_第16页
第16页 / 共26页
java实训ATM取款机设计报告Word格式.docx_第17页
第17页 / 共26页
java实训ATM取款机设计报告Word格式.docx_第18页
第18页 / 共26页
java实训ATM取款机设计报告Word格式.docx_第19页
第19页 / 共26页
java实训ATM取款机设计报告Word格式.docx_第20页
第20页 / 共26页
亲,该文档总共26页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

java实训ATM取款机设计报告Word格式.docx

《java实训ATM取款机设计报告Word格式.docx》由会员分享,可在线阅读,更多相关《java实训ATM取款机设计报告Word格式.docx(26页珍藏版)》请在冰点文库上搜索。

java实训ATM取款机设计报告Word格式.docx

经济可行性 

设计实现内容6

数据字典6

成员变量6

方法设计6

页面如下7

数据流程图 

7

测试运行及结果分析

测试及问题探讨11

课设总结与体会12

致谢 

13

参考文献14

附录 

115

4

10

一、课程设计的概念

课程设计的目的

现代社会,ATM 

可以说是一种使用非常广泛的机器, 

使用是非常频

繁的,然而由于程序及其机器本人的一些漏洞,导致 

机的犯罪现象屡有

发生。

该项目的开发有利于进一步提高 

机的性能及安全性,模拟开发

系统软件,掌握系统开基本流程,在开发系统中可以巩固所学的有关软

件开发的知识,有利于提出优化改进现代 

系统的建议。

银行 

机的使用已经普及,人们都已习惯利用自动柜员机来提取现

金,查询存款,转账,修改密码等等,我设计的 

取款机添加了新的功能,

具体功能如下:

管理员状态登入:

无用用户

二、设计方案的论证

概要设计

《JAVA 

程序设计》是计算机相关专业的必修专业基础课程,其实践性、应用性很强。

实践教学环节是必不可少的一个重要环节。

本课程的程序设计专题实际是计算机相关专

业学生学习完《JAVA 

程序设计》课程后,进行的一次全面的综合训练,JAVA 

程序设计的

设计目的是加深对理论教学内容的理解和掌握,使学生较系统地掌握程序设计及其在网

络开发中的广泛应用,基本方法及技巧,为学生综合运用所学知识,利用软件工程为基

础进行软件开发、并在实践应用方面打下一定基础。

?

需求分析

设计的主要目标为:

管理员登陆时要写入账户的名和身份证号在数据库

里进行匹配,匹配成功则登入否则在前台显示账号或密码错误;

普通用户登

入时要写入银行卡号和所属银行卡号的密码,在数据库中进行匹配,匹配成

功即登入否则在前台显示账号或密码错误

可行性分析法是对工程项目技术经济论证技术经济论证经济合理性综合分析的方

法。

其目的是通过对技术先进程度,经济合理性和条件可能性的分析论证,选择

以最小的人力、物力、财力耗费,取得最佳技术、经济、社会效益的切实方案。

它是解决项目投资前期分析的主要手段。

三、设计实现内容

系统功能结构设计

数据字典是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑、

外部实体等进行定义和描述,其目的是对数据流程图中的各个元素做出详细

的说明,使用数据字典为简单的建模项目。

成员变量

成员变量也叫类的属性,一般带有访问控制属性的,而全局变量虽然也有类

的属性,但全局变量严重影响了封装和模块化,一般的全局变量前面要加上

static 

和?

fina 

属性其中,static 

使该变量任何类都可用(方法?

ClassName.

全局变量名)?

,而?

则使得变量不可更改,基本上算是常量了,这也在

一定程度上防止对变量的非法修改。

方法设计

方法名称为任何合乎语法的识别字,返回值类型是方法执行结果返回给

调用者的数据类型,void 

表示没有返回值,参数行(parameter?

list)是调用

时给予的参数声明,两个以上的参数声明以逗号隔开,若没有参数则参数行

为空白,调用时每一个参数对应一个参数值 

(argument)大括号内为方法本体,

也称为方法程序模块(block),包含声明(declarations)和语句

(statements),声明也可以掺杂在语句之间。

一个方法不能声明在另一个方法内。

表方法定义

方法名

功能 

备注

Kh

Xh

Cx

Yhcx

Jiaoyan

Yhjy

Dl

Card

Select

update

Yhdata

yhc

开户

销户

查询

用户查询

校验

用户校验

登入

卡号

选择

修改

用户修改

jiaoyan

GLjiaoyan

页面如下:

数据流程图

登入校验

管理用户登录校验

图 

选择方式登入

四、测试运行及结果分析

1、用户向 

提款机中插入银行卡,如果银行卡是合法的,ATM 

提款机界面提示

用户输入提款密码;

2、用户输入该银行卡的密码,ATM 

提款机与 

MainFrame 

传递密码,检验密码的正

确性。

如果输入密码正确,提示用户输入取钱金额,提示信息为,“请输入您的

提款额度”;

3、用户输入取钱金额,系统校验金额正确,提示用户确认,提示信息为“您输入

的金额是 

xxx,请确认,谢谢!

”,用户按下确认键,确认需要提取的金额;

4、系统同步银行主机,点钞票,输出给用户,并且减掉数据库中该用户帐户中的

存款金额。

5、用户提款,银行卡自动退出,用户取走现金,拔出银行卡,ATM 

提款机界面恢

复到初始状态;

五、测试及问题探讨

如果插入无效的银行卡,那么,在 

提款机界面上提示用户“您使用的银

行卡无效!

”,3 

秒钟后,自动退出该银行卡。

如果用户输入的密码错误,则提示用户“您输入的密码无效,请重新输入”

如果用户连续 

次输入错误密码,ATM 

提款机吞卡,并且 

提款机的界面恢

复到初始状态。

此时,其他提款人可以继续使用其他的合法的银行卡在 

提款

机上提取现金。

用户输入错误的密码后,也可以按“退出”键,则银行卡自动退出。

如果用户输入的单笔提款金额超过单笔提款上限,ATM 

提款机界面提示“您输

入的金额错误,单笔提款上限金额是 

2500RMB,请重新输入”;

如果用户输入的单笔金额,不是以 

50RMB 

为单位的,那么提示用户“您输入

的提款金额错误,请输入以 

50 

为单位的金额”;

如果用户输入正确的提款金额,ATM 

提款机提示用户确认后,用户取消提款,

则 

提款机自动退出该银行卡;

如果 

提款机中余额不足,则提示用户,“抱歉,ATM 

提款机中余额不足”,

秒钟后,自动退出银行卡

如果用户银行户头中的存款小于提款金额,则提示用户“抱歉,您的存款余

额不足!

秒钟后,自动退出银行卡;

如果用户没有取走现金,或者没有拔出银行卡,ATM 

提款机不做任何提示,直

接恢复到界面的初始状态;

六、课设总结与体会

大约一个星期的编写JAVA程序,发现自己不懂的地方很多,在完成这个设

计的时候,我总是被一些小的,细的问题挡住前进的步伐,让我总是为了解决一

个小问题而花费很长的时间,甚至做到很晚,最好猛然发现自己缺少一个定义或

者还要查阅其他的书籍才能找出解决的办法。

例如,我定义了一个链表,可是向

里面添加东西的时候,总是出错,后来在上机的时候问老师,才知道链表没有初

始化,这是自己的粗心造成的。

我在做设计的过程中发现有很多东西,我都还不

知道。

在做进制转换时不知道函数怎么写,是我上网查到的,再经过修改查到我

的程序中。

其实在用语言来编程的时候,基础是一个不可缺少的知识,但是往往

一些核心的高层次的东西更是不可缺少。

七、致谢

通过这次课程设计还使我懂得了理论与实际相结合是很重要的,只有理论知

识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出

结论,才能真正为社会服务,

从而提高自己的实际动手能力和独立思考的能力。

在设计的过程中遇到问题,

可以说得是困难重重,并且还发现了自己的许多不足之处,对以前所学过的

知识理解得不够深刻,掌握得不够牢固。

但通过这次课程设计之后,一定把

以前所学过的知识重新温故。

我完成了这次 

课程设计,不过这只是我学习路上的驿站。

我相信我在

未来的学习中会记住从本次课程设计中所学到的东西,并将它用到未来的学

习中去。

在这里谢谢老师的指导,我会更加努力的学习

八、参考文献

[1].张桂珠 

刘丽 

陈爱国 

面向对象程序设计(第 

版)北京邮电大学出版社

[2]毕广吉. 

程序设计实例教程. 

北京:

冶金工业出版社,2007 

[6]董迎红、王薇编着,Java 

程序设计案例教程与实训,北京大学出版社

[7]赵文靖编着,《Java 

程序设计基础与上机指导》,清华大学出版社

九、附录

package 

c;

import 

;

public 

class 

Zong 

implements 

JieK 

{

void 

kh(info 

u)throws 

ClassNotFoundException, 

SQLException{

String 

pid 

();

user_name 

telephone 

addr 

LianJie 

lj=new 

LianJie();

Connection 

con= 

sql 

"

{call 

kaihu(?

?

)}"

CallableStatement

(1,pid);

(2,user_name 

);

(3,telephone 

(4,addr);

cs 

(sql);

}

xh 

(String 

user_id)throws 

con 

null;

xiaohu(?

(1,user_id);

List<

info>

cx(String 

pid,String 

user_id) 

throws 

ClassNotFoundException,

Statement 

sta 

SELECT 

FROM 

userinfo 

where 

1=1"

if 

(pid 

!

null 

&

pid!

="

){

sql+"

and 

pid='

pid+"

'

(user_id 

user_id!

user_id='

user_id+"

ResultSet 

rs 

list=null;

list 

new 

ArrayList<

while()){

user_id1 

(1);

(2);

pid1 

(3);

(4);

(5);

info 

info();

(user_id1);

(user_name);

(pid1);

(telephone);

(addr);

(s);

return 

list;

yhcx(String 

card_id)throws 

ClassNotFoundException,SQLException{

PreparedStatement 

ps 

=null;

sql1="

select 

,,,, 

from 

cardinfo 

c,userinfo 

and

card_id=?

(sql1);

(1,card_id);

li=new 

user_id=

(1);

user_name=

(2);

telephone=(3);

card_id1=(4);

Date 

open_date=(5);

int 

balance=(6);

info=new 

info( 

(user_id);

(card_id1);

(open_date);

(balance);

(info);

li;

publicvoid 

jiaoyi(info 

u) 

throwsClassNotFoundException,SQLException{

card_id 

trans_type=();

trans_money=();

card_id1 

user_money(?

(1, 

trans_type);

(2, 

card_id);

(3, 

trans_money);

(4, 

card_id1);

yhjy(String 

card_id) 

transinfo 

(card_id 

card_id!

card_id='

card_id+"

trans_date 

balance 

trans_type 

trans_money 

remark 

(6);

a=();

(a);

(trans_type);

(trans_money);

(remark);

dl(String 

user_id,String 

passwd)throws 

cardinfowhere 

+user_id+"

passwd='

+passwd+"

card_id=null;

in=null;

in 

("

card_id"

(card_id);

in;

card(String 

SQLException, 

ClassNotFoundException{

open_date 

open_date"

open_money 

open_money"

balance"

passwd 

passwd"

user_id 

user_id"

in=new 

(open_money);

(passwd);

(in);

select(String 

Exception 

sq3="

user_id=?

if(user_id==null||("

)){

userinfo"

(sq3);

}else{

li=new 

user_id1=

(1);

pid=(3);

telephone=(4);

addr=(5);

(pid);

update(info 

in) 

SQLException,ClassNotFoundException{

userid 

=();

username 

() 

sq8="

update 

set 

USER_NAME=?

TELEPHONE=?

ADDR=?

PreparedStatementsta=con. 

prepareStatement(sq8);

userid);

username);

telephone);

addr);

id(String 

user_name)throws 

Exception{

sq7="

user_name=?

st=(sq7);

(1,user_name);

rs=();

user_id1=null;

user_id1= 

user_id1;

yhselect(String 

if(card_id==null||("

cardinfo"

list=new 

o

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2