java编写的银行ATM系统

开发环境

开发语言为Java,开发环境Eclipse或者IDEA都可以。数据库采用:MySQL。运行主程序,或者执行打开JAR文件即可以运行本程序。

系统框架

利用JDK自带的SWING框架开发,需要导入MySMyQL的JDBC JAR包。MySQL数据库,纯窗体模式,直接运行Main文件即可以。同时带有详细得设计文档

涉及主要技术

银行ATM系统 系统用Java语言编写,是一个典型的窗体程序,采用swing框架编写,系统涉及到文件、UI、数据库操作、事件等操作。通过运行Main.java,或者直接运行解压文件假下的JAR文件

主要功能

(1)顾客登录:输出个当输入给定的卡号和密码,系统能登录ATM柜员机系统。当校验通过的时候,跳转到主界面,校验失败,则提示卡号和密码错:

(2)用户输入卡号、密码完成用户的注册操作

(2)查询余额:初始余额为5000元 ,用户点击查询余额,可以查询自己银行卡上的余额信息

(3)ATM取款:每次取款金额为1的倍数,总额不超过5000元,支取金额不允许透支。

(4)ATM存款:不能出现负存款。

(5)转账:用户往指定的卡号进行转账,转账操作需要满足两个条件,对方卡号真实存在,转账的数量必须为正数,而且必须满足卡内余额大于转账金额。

(6)退卡:当用户完成所有的业务操作侯,点击退卡操作,提示用户保管好自己的卡

运行效果

关键代码

package atm;
import javax.swing.*;  
import java.awt.*;  
import java.awt.event.ActionEvent;  
import java.awt.event.ActionListener;  
public class Menu implements ActionListener{
    public JFrame mframe;  
    private JPanel mp0,mp1,mp2,mp3,mp4;//p4是确认密码;点击register按钮石出现  


    private JTextField passWord,passwordCheck;  
    private JButton inqury;  
    private JButton outmoney;  
    private JButton transfer;  
    private JButton inmoney;  
    private JButton changepassword;  


    public Menu()  
    {  
        mframe=new JFrame();  
        mframe.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);  
        JButton inqury=new JButton("查询");  
        JButton outmoney=new JButton("取款");  
        JButton transfer=new JButton("转账");  
        JButton inmoney=new JButton("存款");  
        JButton changepassword=new JButton("更改密码");  
        JButton exit=new JButton("退卡");  
        inqury.setPreferredSize(new Dimension(200,40));
        outmoney.setPreferredSize(new Dimension(200,40));
        transfer.setPreferredSize(new Dimension(200,40));
        inmoney.setPreferredSize(new Dimension(200,40));
        changepassword.setPreferredSize(new Dimension(200,40));
        exit.setPreferredSize(new Dimension(200,40));
        inqury.setFont(new Font("宋体",Font.BOLD,16));
        outmoney.setFont(new Font("宋体",Font.BOLD,16));
        transfer.setFont(new Font("宋体",Font.BOLD,16));
        inmoney.setFont(new Font("宋体",Font.BOLD,16));
        changepassword.setFont(new Font("宋体",Font.BOLD,16));
        exit.setFont(new Font("宋体",Font.BOLD,16));
        //            mp0=new JPanel();  
        //            mp0.add(new JLabel("选择项目"));  
        //            mframe.add(mp0);  
        mp1=new JPanel(); 
        JLabel jlb1=new JLabel("ATM业务选择");
        jlb1.setFont(new java.awt.Font("Dialog",  1, 30));
        jlb1.setForeground(Color.blue);
        mp1.add(jlb1);  

        mp1.add(inmoney);  
        mp1.add(inqury);  
        mp1.add(outmoney);  
        mp1.add(transfer);  
        mp1.add(changepassword);  
        mp1.add(exit);  

        mp1.setLayout(new GridLayout(7,1));  
        mframe.add(mp1);  
        mframe.pack();  
        mframe.setVisible(true);  
        mframe.setLayout(new FlowLayout());  
//        mframe.setBounds(800,800,450,300);  
        mframe.setSize(600, 400);//窗体大小 
        mframe.setLocationRelativeTo(null);
        mframe.setTitle("中国建设银行ATM系统"); 
        inqury.addActionListener(this);//绑定监听器  
        inmoney.addActionListener(this);  
        outmoney.addActionListener(this);  
        transfer.addActionListener(this);  
        changepassword.addActionListener(this);  
        exit.addActionListener(this);  

    }  

    @Override  
    public void actionPerformed(ActionEvent e) {  
        String cmd=e.getActionCommand();//cmd赋值为点击的按钮的值  
        if(cmd.equals("查询"))  
        {  
            Inqury inquryGui=new Inqury();  
        }  
        else if(cmd.equals("取款"))  
        {  
            OutMoney outMoneyGui=new OutMoney();  
        }  
        else if(cmd.equals("存款"))  
        {  
            InMoney inMoney=new InMoney();  
        }else if(cmd.equals("转账"))  
        {  
            Transfer transfer=new Transfer();  
        }else if(cmd.equals("更改密码"))  
        {  
            ChangePassword changePassword=new ChangePassword();  
        }  
        else if(cmd.equals("退卡")){  

            mframe.setVisible(false);//隐藏  
            LoginGui loginGui=new LoginGui();  
            JOptionPane.showMessageDialog(null,"请记得取走你的银行卡");  
        }  

    }  
}

  • 3
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

计算机程序

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值