一个用java模拟ATM机的代码且数据库为mysql,

一个用java模拟ATM机的代码且数据库为mysql,,第1张

最后一列为备注 1、 管理员表(tb_admin) 字段 类型 约束 备注 aId number(6) 主键 --管理员编号 aName varchar2(10) 唯一、非空 --管理员登陆名 aPassword varchar2(16) 非空 --管理员登陆密码 aLastDate date 非空 --上次登陆时间 aNowDate date 非空 --本次登陆时间 2、 yhk登陆表(tb_login) 字段 类型 约束 备注 lId number(8) 主键 --登录ID lCardNumber varchar2(19) 引用yhk信息表 卡号 lPassword number(6) 非空 yhk密码 bIsLock char(1) 默认1 是否被锁,0表示被锁,1表示开启 lTime number(10) 初始为0 登陆次数 aLastDate date 非空 上次登陆时间 aNowDate date 非空 本次登陆时间 3、 客户详细资料表(tb_userInfo) 字段 类型 约束 备注 usId number(8) 主键 客户ID usName varchar2(10) 非空 客户姓名 usIDNumber varchar2(18) 非空 客户身份z号码 usSex char(1) 默认0 客户性别,0表示男,1表示女 usTel varchar2(11) 非空 客户电话 usAddress varchar2(50) 非空 客户地址 4、 银行支行表(tb_Branch) 字段 类型 约束 备注 bId number(3) 主键 支行ID bName varchar2(20) 唯一、非空 支行名 bAddress varchar2(100) 非空 支行地址 5、 yhk信息表(tb_CardInfo) 字段 类型 约束 备注 bCardID number(19) 主键 卡号 bBalance number(8,2) 默认0.00 余额 bUserId number(8) 引用客户详细资料表 卡对应用户ID bBranchID number(4) 引用支行表 支行ID bDate date 默认系统时间 开户时间 6、 yhk交易类型表(tb_TransType) 字段 类型 约束 备注 tId number(2) 主键 类型ID tType nvarchar2(6) 唯一 类型(转账、存款、取出等) 7、 yhk个人账户存、取款记录表(tb_ Pacount) 字段 类型 约束 备注 tId number(10) 主键 交易记录流水号 tType number(2) 引用交易类型表 交易类型ID tCardID number(19) 引用yhk信息表 交易卡号 tamount number(10) 非空 交易金额 tDate date 非空 交易时间 8、 yhk转账等交易记录表(tb_TransInfo) 字段 类型 约束 备注 tId number(10) 主键 交易记录流水号 tType number(2) 引用交易类型表 交易类型ID tCardIDout number(19) 引用yhk信息表 交易金额转出卡号 tCardIDIn number(19) 引用yhk信息表 交易金额转入卡号 tamount number(10) 非空 交易金额 tDate date 非空 交易时间

代码如下

package BaiDdu

import java.util.Scanner

public class ATM {

/*1提示请输入密码然后直接进入下一步。密码6位限制(限制方法用 “最小大于100000最大小于999999”这样限制)

2.提示密码正确还是错误密码直接弄成“123456”错误返回上一步循环方法用for循环。

3.密码输入正确后进入下一步提示5个选项(1.余额查询“基础10000”2.取款  3存款4.退出)

4.进行取款或者存款之后要回到第三步重新选择(余额和取款存款相关联)

备注:用键盘输入的方法用scanner*/

private static int money=10000//全局变量 余额 默认10000

public static void main(String args[])

{

for(){//for循环,有意思吗?

    System.out.println("请输入密码:")

Scanner input=new Scanner(System.in)

int pw=input.nextInt()

if ( Checkpw(pw)) {

System.out.println("密码正确。")

Next()

}

else  System.out.println("密码错误!")

}

}

public static boolean Checkpw(int pw)

{

if (pw==123456)return true//固定密码就不需要限制位数了,反正不符合就错

else

return false

}

public static void Next() {

do {

System.out.println("请选择你需要的功能:")

System.out.println("1.余额查询  2.取款  3.存款 4.退出")

int value = new Scanner(System.in).nextInt()

switch (value) {

case 1:// 查询余额

System.out.println("您的余额为 "+money+"元")

break

case 2:// 取款

System.out.println("请输入取款金额:")

 

int getnum=new Scanner(System.in).nextInt()

if (getnum<0) System.out.println("输入金额有误!")

else if(getnum>money)System.out.println("余额不足.")

else {money=money-getnumSystem.out.println("取款成功,余额为"+money)}

break

case 3:// 存款

System.out.println("请输入存款金额:")

 

int pushnum= new Scanner(System.in).nextInt()

if (pushnum<0) System.out.println("输入金额有误!")

else {money=money+pushnumSystem.out.println("存款成功,余额为"+money)}

break

case 4:// 退出

System.out.println("谢谢使用!")

System.exit(0)

break

 

default:

System.out.println("输入有误")

break

}

 

}while(true)

}

}

2、运行效果


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9611129.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存