诚接C语言、C++、Java、Python、HTML、JavaScript、vue、MySQL相关编程作业,
标价10-20每份,如有需要请加文章最下方QQ。
本文资源:https://download.csdn.net/download/weixin_47040861/88850902https://download.csdn.net/download/weixin_47040861/88850902
1.题目要求
银行管理系统:
通过Java控制台开发一个银行管理系统,使用MySQL作为后台数据,实现银行管理员工功能和顾客功能。具体要求如下:
(1)管理员功能:登录、添加顾客、删除顾客、计算存储金额、富豪排行榜、退出。
(2)顾客功能:登录、存款、取款、转账、修改密码、退出。
2.实现效果
注意:使用前请保证您电脑中的MySQL数据库能够正常使用,且eclipse已经安装了JDBC
该项目分为三个Java文件,其中Main.java文件为项目入口,Administrators.java文件和Customer.java文件分别存储了管理员与顾客对应的功能函数
1.主函数
首先在Main.java文件中定义了一些基本信息,包括MySQL的用户名和密码,使用该项目文件前请先将项目中的用户名和密码修改为您自己的。
启动项目后,该项目首先会验证是否存在名称为“bank”的数据库,若不存在则创建,同时创建administrators和customer表用于存储管理员和用户数据,若存在则建立连接,需要注意的是,数据库和表的创建都是由项目自动完成的,请勿手动创建以避免冲突:
try {
System.out.println("连接到数据库...");
in.conn = DriverManager.getConnection(DB_URL, USER, PASS);
// 检查是否存在名为 'bank' 的数据库
createDatabase(in.conn, "bank");
// 切换到 'Bank' 数据库
in.conn.setCatalog("bank");
// 检查 'Administrators' 表是否存在
if (!tableExists(in.conn, "administrators")) {
createAdministratorsTable(in.conn);
}
//清空管理员数据
String deleteQuery = "DELETE FROM " + "administrators";
try (Statement statement = in.conn.createStatement()) {
statement.executeUpdate(deleteQuery);
}
insertAdminData(in.conn, "root", "123456");//添加一条管理员数据
// 检查 'Customer' 表是否存在
if (!tableExists(in.conn, "customer")) {
createCustomerTable(in.conn);
}
} catch (SQLException se) {
se.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
创建完成后打印操作界面,根据用户输入的操作编号调用对应的功能:
2.管理员功能
用户输入操作编号后输入对应的账号和密码即可进入对应的操作界面,这里先以管理员操作界面做演示:
1.添加顾客
依次输入顾客身份证号、账号、密码、余额,若输入格式正确则成功添加顾客账户
添加后的数据库表:
2.删除顾客
输入账号和身份证号删除对应顾客数据
删除后的数据库表:
3.计算存储金额
输入操作编号后输出当前顾客的总余额
4.富豪排行榜
输入操作编号后对所有用户的余额进行降序排序后输出
3.顾客功能
输入管理员添加的账户后进入操作界面:
1.存款
根据用户输入的存款金额增加对应的余额,同时打印顾客余额:
修改后的数据库:
2.取款
根据用户输入的存款金额减少对应的余额,同时打印顾客余额:
3.转账
根据顾客输入的对应账号和转账金额修改数据,从顾客账户中减少对应金额,同时给另一个账号增加对应金额:
修改后的数据库:
4.修改密码
用户首先输入原密码和新密码,当原密码与数据库中的密码匹配时则修改为新密码: