Flask接口签名sign原理与实例代码浅析
331
2022-12-06
java模拟ATM功能(控制台连接Mysql数据库)
本文实例为大家分享了java模拟ATM功能的具体代码,供大家参考,具体内容如下
有三个类:Test.java、Customer.java、CustomerDAO.java、ATMSystem.java
ATMSystem.java实现模拟ATM的功能
Customer.java创建一个用户对象
CustomerDAO.java实现连接数据库
Test为主程序
ATMSystem.java:
package ATM;
import java.util.Scanner;
public class ATMSystem
{
CustomerDAO dao=new CustomerDAO();
Scanner input=new Scanner(System.in);
private int id;
public ATMSystem()
{
}
public void Regist()
{
System.out.println("注册卡号:");
int myid=input.nextInt();
System.out.println("注册用户名:");
String myname=input.next();
System.out.println("注册密码:");
String mypwd=input.next();
System.out.println("输入存入金额:");
int mymoney=input.nextInt();
dao.Regist(myid, mypwd, myname, mymoney);
}
public boolean login()
{
System.out.println("请输入密码:");
String mypwd=input.next();
id=dao.login(mypwd);
if(id==-1)
{
System.out.println("登录失败!");
return false;
}
else
{
System.out.println("登陆成功!");
return true;
}
}
public void query(int id)
{
Customer cust=dao.query(id);
System.out.println("********************");
System.out.println("卡号:"+cust.getid());
System.out.println("余额:"+cust.getmoney());
System.out.println("用户名:"+cust.getname());
System.out.println("********************");
}
public void save()
{
System.out.println("输入存款金额:");
int money=input.nextInt();
dao.update_save(id, money);
}
public void get()
{
System.out.println("********************");
System.out.println("输入取款金额:");
int money=input.nextInt();
dao.update_get(id, money);
System.out.println("********************");
}
public void change()
{
System.out.println("请输入转账卡号:");
int inid=input.nextInt();
System.out.println("请输入转账金额:");
int money=input.nextInt();
dao.change(id, inid, money);
}
public void begin()
{
int num=-1;
int Num=0;
System.out.println("请选择功能:");
System.out.println("1.注册 2.登录");
Num=input.nextInt();
switch(Num)
{
case 1:
Regist();
break;
case 2:
if(login())
{
while(num!=0)
{
System.out.println("********************");
System.out.println("欢迎欢迎,热烈欢迎");
System.out.println("请选择功能:");
System.out.println("1.存款 2.取款 3.查询 4.转账 0.退出");
System.out.println("***********MzAjvmrDYR*********");
num=input.nextInt();
switch(num)
{
case 1:
save();
break;
case 2:
get();
break;
case 3:
query(id);
break;
case 4:
change();
break;
case 0:
System.out.println("谢谢使用!");
break;
}
}
}
else
{
System.out.println("登录失败,账号、密码错误!");
}
break;
default:
break;
}
}
}
Customer.java
package ATM;
public class Customer
{
private int id;
private String pwd;
private int money;
private String name;
public int getid()
{
return id;
}
public void setid(int newid)
{
id=newid;
}
public String getpwd()
{
return pwd;
}
public void setpwd(String newpwd)
{
pwd=newpwd;
}
public String getname()
{
return name;
}
public void setname(String newname)
{
name=newname;
}
public int getmoney()
{
retuMzAjvmrDYRrn money;
}
public void setmoney(int newmoney)
{
money=newmoney;
}
}
CustomerDAO.java:
package ATM;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
public class CustomerDAO
{
private Connection conn=null;
private java.sql.PreparedStatement p=null;
public CustomerDAO()
{
try {
Chttp://lass.forName("org.gjt.mm.mysql.Driver");
} catch (ClassNotFoundException e) {
http:// // TODO Auto-generated catch block
e.printStackTrace();
}
try {
conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/mysql", "root", "");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public int login(String mypwd)
{
String sql="select * from mysql where pwd = ?";
try
{
p=conn.prepareStatement(sql);
p.setString(1, mypwd);
ResultSet rs=p.executeQuery();
if(rs.next())
{
return rs.getInt("id");
}
rs.close();
p.close();
conn.close();
}
catch (SQLException e)
{
e.printStackTrace();
}
return -1;
}
public Customer query(int id)
{
Customer cust=new Customer();
try
{
String sql="select * from mysql where id = ?";
p=conn.prepareStatement(sql);
p.setInt(1, id);
ResultSet rs=p.executeQuery();
if(rs.next())
{
cust.setid(rs.getInt("id"));
cust.setmoney(rs.getInt("money"));
cust.setname(rs.getString("name"));
cust.setpwd(rs.getString("pwd"));
}
}
catch (Exception e) {
// TODO: handle exception
}
return cust;
}
public void update_get(int id,int money)
{
String sql="select * from mysql where id = ?";
try
{
p=conn.prepareStatement(sql);
p.setInt(1, id);
ResultSet rs=p.executeQuery();
if(rs.next())
{
if(rs.getInt("money") { System.out.println("余额不足!"); } else { sql="update mysql set money = money - ? where id = ?"; p=conn.prepareStatement(sql); p.setInt(1, money); p.setInt(2, id); p.executeUpdate(); System.out.println("取款成功!"); } } } catch (Exception e) { // TODO: handle exception } } public void update_save(int id,int money) { String sql="update mysql set money = money + ? where id = ?"; try { p=conn.prepareStatement(sql); p.setInt(1, money); p.setInt(2, id); p.executeUpdate(); System.out.println("存款成功!"); } catch (Exception e) { // TODO: handle exception } } public void change(int myid,int inid,int money) { try { String sql="select * from mysql where id = ?"; p=conn.prepareStatement(sql); p.setInt(1, inid); ResultSet rs=p.executeQuery(); if(rs.next()) { sql="select * from mysql where id = ?"; p=conn.prepareStatement(sql); p.setInt(1, myid); rs=p.executeQuery(); if(rs.next()) { if(rs.getInt("money") { System.out.println("余额不足!"); return; } else { sql="update mysql set money = money - ? where id = ?"; p=conn.prepareStatement(sql); p.setInt(1, money); p.setInt(2, myid); p.executeUpdate(); sql="update mysql set money = money + ? where id = ?"; p=conn.prepareStatement(sql); p.setInt(1, money); p.setInt(2, inid); p.executeUpdate(); } } } else { System.out.println("卡号错误!"); } } catch (Exception e) { // TODO: handle exception } } public void Regist(int myid,String mypwd,String myname,int mymoney) { String sql; try { sql="select * from mysql where id = ?"; p=conn.prepareStatement(sql); p.setInt(1, myid); ResultSet rs=p.executeQuery(); if(rs.next()) { System.out.println("此卡已注册,请勿重复注册!!!!"); return; } } catch (Exception e) { // TODO: handle exception } try { sql="insert into mysql(id,pwd,money,name) values(?,?,?,?)"; p=conn.prepareStatement(sql); p.setInt(1, myid); p.setString(2, mypwd); p.setInt(3, mymoney); p.setString(4, myname); p.executeUpdate(); System.out.println("注册成功!"); } catch (Exception e) { // TODO: handle exception } } } Test.java: package ATM; public class Test { public static void main(String[] args) { // TODO Auto-generated method stub ATMSystem ATM=new ATMSystem(); while(true) { ATM.begin(); } } }
{
System.out.println("余额不足!");
}
else
{
sql="update mysql set money = money - ? where id = ?";
p=conn.prepareStatement(sql);
p.setInt(1, money);
p.setInt(2, id);
p.executeUpdate();
System.out.println("取款成功!");
}
}
}
catch (Exception e)
{
// TODO: handle exception
}
}
public void update_save(int id,int money)
{
String sql="update mysql set money = money + ? where id = ?";
try
{
p=conn.prepareStatement(sql);
p.setInt(1, money);
p.setInt(2, id);
p.executeUpdate();
System.out.println("存款成功!");
}
catch (Exception e)
{
// TODO: handle exception
}
}
public void change(int myid,int inid,int money)
{
try
{ String sql="select * from mysql where id = ?";
p=conn.prepareStatement(sql);
p.setInt(1, inid);
ResultSet rs=p.executeQuery();
if(rs.next())
{
sql="select * from mysql where id = ?";
p=conn.prepareStatement(sql);
p.setInt(1, myid);
rs=p.executeQuery();
if(rs.next())
{
if(rs.getInt("money") { System.out.println("余额不足!"); return; } else { sql="update mysql set money = money - ? where id = ?"; p=conn.prepareStatement(sql); p.setInt(1, money); p.setInt(2, myid); p.executeUpdate(); sql="update mysql set money = money + ? where id = ?"; p=conn.prepareStatement(sql); p.setInt(1, money); p.setInt(2, inid); p.executeUpdate(); } } } else { System.out.println("卡号错误!"); } } catch (Exception e) { // TODO: handle exception } } public void Regist(int myid,String mypwd,String myname,int mymoney) { String sql; try { sql="select * from mysql where id = ?"; p=conn.prepareStatement(sql); p.setInt(1, myid); ResultSet rs=p.executeQuery(); if(rs.next()) { System.out.println("此卡已注册,请勿重复注册!!!!"); return; } } catch (Exception e) { // TODO: handle exception } try { sql="insert into mysql(id,pwd,money,name) values(?,?,?,?)"; p=conn.prepareStatement(sql); p.setInt(1, myid); p.setString(2, mypwd); p.setInt(3, mymoney); p.setString(4, myname); p.executeUpdate(); System.out.println("注册成功!"); } catch (Exception e) { // TODO: handle exception } } } Test.java: package ATM; public class Test { public static void main(String[] args) { // TODO Auto-generated method stub ATMSystem ATM=new ATMSystem(); while(true) { ATM.begin(); } } }
{
System.out.println("余额不足!");
return;
}
else
{
sql="update mysql set money = money - ? where id = ?";
p=conn.prepareStatement(sql);
p.setInt(1, money);
p.setInt(2, myid);
p.executeUpdate();
sql="update mysql set money = money + ? where id = ?";
p=conn.prepareStatement(sql);
p.setInt(1, money);
p.setInt(2, inid);
p.executeUpdate();
}
}
}
else
{
System.out.println("卡号错误!");
}
}
catch (Exception e) {
// TODO: handle exception
}
}
public void Regist(int myid,String mypwd,String myname,int mymoney)
{
String sql;
try
{
sql="select * from mysql where id = ?";
p=conn.prepareStatement(sql);
p.setInt(1, myid);
ResultSet rs=p.executeQuery();
if(rs.next())
{
System.out.println("此卡已注册,请勿重复注册!!!!");
return;
}
}
catch (Exception e)
{
// TODO: handle exception
}
try
{
sql="insert into mysql(id,pwd,money,name) values(?,?,?,?)";
p=conn.prepareStatement(sql);
p.setInt(1, myid);
p.setString(2, mypwd);
p.setInt(3, mymoney);
p.setString(4, myname);
p.executeUpdate();
System.out.println("注册成功!");
}
catch (Exception e)
{
// TODO: handle exception
}
}
}
Test.java:
package ATM;
public class Test
{
public static void main(String[] args)
{
// TODO Auto-generated method stub
ATMSystem ATM=new ATMSystem();
while(true)
{
ATM.begin();
}
}
}
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~