面向对象程序设计—Java+ATM银行系统 - 图文(2)

2020-02-20 13:57

2.1.1 设计思想

ATM取款系统需要满足来自两个方面的需求,这两个方面分别是管理员和用户。用户的需求是取款、存款、转账、查询、修改、取卡等功能;管理人员的功能较为复杂,包括对用户实现开户、销户、查询、修改和维护用户的各种信息。

用户可以根据自己的银行卡通过ATM机登录到用户系统,登录成功后可进行六种操作,分别是取款、存款、转账、查询、修改、取卡。不能查看他人的信息。这样就可以保证其他用户信息的保密性。

管理人员有对用户实现开户、销户、查询、修改和维护用户的各种信息等记录的权限,所以需对管理员登陆模块进行更多的考虑。

2.1.2 系统功能模块划分

一般可分为:

用户模块:包括取款模块、存款模块、转账模块、查询模块、修改模块、取卡模块。

管理员模块:包括文件模块、系统管理模块、操作模块、关于模块、交易记录模块。 其中文件模块包括:开户、销户。 系统模块包括:改密、注销。 操作模块包括:查询、修改。 关于模块包括:版本。 交易模块包括:打印。 (各模块功能图:见P5 2.1)

2.1.3 ATM银行系统各模块图

在概念设计阶段中,设计人员从用户的角度看待数据及处理要求和约束,产生一个反映用户观点的概念模式。然后再把概念模式转换成逻辑模式。将概念设计从设计过程中独立开来,使各阶段的任务相对单一化,设计复杂程度大大降低,不受特定DBMS的限制。

各个E-R图分析如下:

用户系统E-R实图

6 / 23

管理员系统E-R实图

2.1.4 数据库的逻辑设计

由于概念设计的结果是ER图,DBMS一般采用关系型(我们所使用的MS ACCESS就是关系型的DBMS),因此数据库的逻辑设计过程就是把ER图转化为关系模式的过程。由于关系模型所具有的优点,逻辑设计可以充分运用关系数据库规范化理论,使设计过程形式化地进行。设计结果是一组关系模式的定义。 1.数据字典

取款=卡号+密码+取款金额。 查询=卡号+密码+查询余额。 存款=卡号+密码+存款金额。 改密=卡号+密码+旧密码+新密码。 转账=卡号+密码+收款人卡号。

开户=客户编号+姓名+身份证+电话+地址+卡号+货币类型+存款类型+金额+密码+余额+开户日期

销户=卡号

打印=交易日期+卡号+交易类型+交易金额 2.具体表——数据库(Bank.mdb)

表一(管理员-admin)字段及内容

7 / 23

表二(用户表-userInfo)字段及内容

表三(卡号表-cardInfo)字段及内容

表四(交易表-transInfo)字段及内容

2.2详细设计

2.2.1 管理员窗体模块组成

8 / 23

1.文件模块

功能: 文件模块包括开户和销户两个小模块,开户可以为用户办理银行卡,销户可以取消用户的卡号。

2.系统管理模块

功能:系统管理模块包括改密和注销两个小模块,通过改密功能,管理员可自行修改密码,注销可返回到登录界。

3.操作模块

功能:操作模块包括查询、修改和查看IP三个小模块,其中,查询中还包括查询用户信息和查询卡信息模块;修改中还包括修改用户信息和修改卡信息模块;查看IP就是查看当前工作的IP。

4. 交易记录模块

功能:交易记录模块包括打印小模块,可以打印出用户各种交易情况。

2.2.2 管理员模块窗体界面及相应代码

1 、窗体界面说明 (1)登录界面

管理员登录由管理员名和密码构成,在管理员输入管理员名和密码后,系统首先验证输入字符的有效性,然后调用数据库查看此管理员名是否存在或密码是否正确,最后判断管理员权限确定操作员还是管理员,并赋与不同的权限。代码如下:

9 / 23

代码如下:

if(jTextField.getText().equals(\)||jPasswordField.getPassword().equals(\)&&jPasswordField1.getPassword().equals(\)){

JOptionPane.showMessageDialog(null, \请先选择登陆角色!\); }else{ if(bb){

if(jTextField.getText().equals(\)||jTextField.getText().equals(\)||jTextField.getTex

t().equals(\)){ }

MFrm m=new MFrm(); m.setVisible(true);

close();

Connection con; con=db.getConn();

user=String.valueOf(jTextField.getText());

String pass=String.valueOf(jPasswordField.getPassword()); boolean bb=db.isValid(con, user, pass);

}else{

if(i==0) else { } }

JOptionPane.showMessageDialog(null, \该管理员不存在!\); }

i--;

JOptionPane.showMessageDialog(null, \密码输错3次!请到柜台改密码!\);

JOptionPane.showMessageDialog(null, \密码错误!请重新输入!!\);

}else{

(2) 主界面

10 / 23


面向对象程序设计—Java+ATM银行系统 - 图文(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:关于开展“践行文明干部作表率”主题实践活动的实施方案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: