JAVA编写的ATM柜员机模拟程序系统(连接数据库)

本文档详细介绍了使用JAVA编程实现的ATM柜员机模拟程序系统,包括查询余额、取款、存款和修改密码等功能。系统连接MySQL数据库,确保操作的安全性和准确性。用户必须输入正确的用户名和密码才能登录,并在特定条件下完成相应的操作,如取款要求为100的倍数,存款不允许负数,密码修改需符合特定规则。
摘要由CSDN通过智能技术生成

一、 设计任务与目的
1、查询余额:初始余额为10000元
2、ATM取款:每次取款金额为100的倍数,总额不超过5000元,支取金额不允许透支。
3、ATM存款:不能出现负存款。
4、修改密码:新密码长度不小于6位,不允许出现6位完全相同的情况,只有旧密码正确,新密码符合要求,且两次输入相同的情况下才可以成功修改密码。

二、系统设计
用户功能模块设计
连接数据库
加载驱动类,执行该类中的初始代码,将驱动注册到DriverManager中

public class AtmDriver {
   
	 public void atmDriver() {
   
		 try {
   
			 Class.forName("com.mysql.jdbc.Driver");
			 System.out.println("加载数据库驱动成功");
		 }
		 catch(ClassNotFoundException el){
   
			 System.out.println("加载数据库驱动失败");
		 }
	 }
}

连接MySQL数据库,建立连接对象

public class BankDb {
   
	Connection bank=null;//建立连接对象
	 java.sql.Statement st=null;//建立SQL语句执行器
	 public Connection optiondb() {
   
		 try {
   
			bank=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/product","root", "05021327abc");
		     st= bank.createStatement();
		     System.out.println("连接数据库成功");
		     return bank;
		 }
		 catch(Exception e1) {
   
			 JOptionPane.showMessageDialog(null, "连接数据库失败!");
		 }
		return bank;
	 }
	 public Connection getBank() {
   
		 return bank;
	 }
	 public java.sql.Statement getSt() {
   
		 return st;
	 }
}

用户登录界面
登录时,应输入正确的用户名和密码,凡是输入错误用户名和密码都会提示登录失败。填写正确用户名和密码后,会跳转到另一个可选功能的页面。

public class BankWindow extends JFrame  implements ActionListener {
   
    private JFrame frame;
    private JPanel p0,p1,p2,p3,p4;
    private JTextField userName;
    private JTextField passWord,passwordCheck;
    private JButton button1;
    private String Id="";
    private String password="";
    
    public BankWindow() {
   
        frame=new JFrame("登录ATM");
        frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);//设置的是退出程序
       
        p0=new JPanel();
        p0.add(new JLabel("模拟银行ATM"));
        frame.add(p0);
 
        p1=new JPanel();
        p1.add(new JLabel("\t卡号:"));
        userName=new JTextField(20);
        p1.add(userName);
 
        p2=new JPanel();
        p2.add(new JLabel("\t密码:"));
        passWord=new JTextField(20);
        p2.add(passWord);
 
        p3=new JPanel();
        button1=new JButton("登录 ");
        p3.add(button1);
        button1.addActionListener(this);
      
        p4=new JPanel();
        p4.add(new JLabel("确认密码:"));
        passwordCheck=new JTextField(20);
        p4.add(passwordCheck);
 
        frame.add(p1);
        frame.add(p2);
        frame.add(p4);//确认密码框
        frame.add(p3);
 
 
        frame.pack();
        frame.setVisible(true);
        p4.setVisible(false);
        show();
        
    }

    public void show(){
   
        frame.setBounds(500,500,350,250);//设置大小
        frame.setLayout(new FlowLayout());//设置流式布局
评论 42
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值