【Java大数据期末】银行管理系统(MySQL数据库)

news2024/11/25 11:06:01

诚接C语言、C++、Java、Python、HTML、JavaScript、vue、MySQL相关编程作业,
标价10-20每份,如有需要请加文章最下方QQ。

本文资源:https://download.csdn.net/download/weixin_47040861/88850902icon-default.png?t=N7T8https://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.修改密码

用户首先输入原密码和新密码,当原密码与数据库中的密码匹配时则修改为新密码:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1457208.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

四旋翼无人机控制-零散笔记整理

四旋翼无人机控制-零散笔记整理 说明仿真框架 说明 这是低创文章,本意是整理本科留下来的一堆零碎的纸质笔记,整理完就把纸质的扔了。所以前后不连贯,也可能有错误,图片都是直接拍的笔记照片,很丑。如果想系统学习的可…

OpenAI划时代大模型——文本生成视频模型Sora作品欣赏(二)

Sora介绍 Sora是一个能以文本描述生成视频的人工智能模型,由美国人工智能研究机构OpenAI开发。 Sora这一名称源于日文“空”(そら sora),即天空之意,以示其无限的创造潜力。其背后的技术是在OpenAI的文本到图像生成模…

书生开源大模型训练营-第3讲笔记

5.Langchain和InternLM搭建知识库 5.1环境 还是一样,开发机中创建镜像,以及所需依赖 pip install modelscope1.9.5 pip install transformers4.35.2 pip install streamlit1.24.0 pip install sentencepiece0.1.99 pip install accelerate0.24.15.2模…

(三十六)大数据实战——ClickHouse数据库的部署安装实现

前言 ClickHouse是俄罗斯的Yandex于2016年开源的列式存储数据库 DBMS ),使用C语言编写,主要用于在线分析处理查询( OLAP ),能够使用SQL查询实时生成分析数据报告。列式存储:数据按列进行存储&a…

Slack 给平台加入了 AI 驱动的搜索和总结功能

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…

统计函数(分组函数)

目录 验证函数 计算出公司的平均雇佣年限 求出最早和最晚的雇佣日期(找到公司最早雇佣的员工和最近雇佣的员工的雇佣日期) 统计bonus表 面试题 统计查询 Oracle从入门到总裁:https://blog.csdn.net/weixin_67859959/article/details/135209645 之…

2024.2.19 阿里云Flink

一 、Flink基本介绍 Spark底层是微批处理 , Flink底层则是实时流计算 流式计算特点: 数据是源源不断产生,两大问题,乱序和延迟 Stateful:有状态 Flink的三个部分 Source:Transactions , logs ,iot ,clicks Transformation: 事件驱动 , ETL , 批处理 Sink : 输出 HDFS ,Kaf…

信号系统之窗口正弦滤波器

1 Windowed-Sinc 的策略 图 16-1 说明了 windowed-sinc 滤波器背后的思想。在**(a)**中,显示了理想低通滤波器的频率响应。所有低于截止频率 f c f_c fc​ 的频率都以单位振幅通过,而所有较高的频率都被阻挡。通带是完全平坦的,阻带中的衰减…

C++题目打卡2.18

从今天开始我们又将讲4天题目。 题目列表 1.分配T4 2.组合T5 #分配T4 这里很明显是&#xff08;200 110&#xff09; - 330的差值最小。 我们先想到了一个想法就是输入时哪个堆大,加那个。 #include <bits/stdc.h> using namespace std; int main(){int n, ans1 0, …

基于SSM的疫情期间学生信息管理平台的设计与实现(有报告)。Javaee项目。ssm项目。

演示视频&#xff1a; 基于SSM的疫情期间学生信息管理平台的设计与实现&#xff08;有报告&#xff09;。Javaee项目。ssm项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结构&…

Compose 1.6 发布:性能大升级、拖放新功能、文本新变化...

翻译自&#xff1a; https://android-developers.googleblog.com/2024/01/whats-new-in-jetpack-compose-january-24-release.html 基于 1 月 24 号的 Compose 发行计划&#xff0c;我们正式推出了 Jetpack Compose 1.6 版本。 作为 Android 平台备受推崇的原生 UI 工具包&…

vm centos7 docker 安装 mysql 5.7.28(2024-02-18)

centos系统版本 [rootlocalhost mysql5.7]# cat /etc/redhat-release CentOS Linux release 7.9.2009 (Core) docker版本 拉取指定版本镜像 docker pull mysql:5.7.28 docker images 创建挂载目录&#xff08;数据存储在centos的磁盘上&#xff09; mkdir -p /app/softwa…

【Python机器学习】详解Python机器学习进行时间序列预测

&#x1f517; 运行环境&#xff1a;Python &#x1f6a9; 撰写作者&#xff1a;左手の明天 &#x1f947; 精选专栏&#xff1a;《python》 &#x1f525; 推荐专栏&#xff1a;《算法研究》 &#x1f510;#### 防伪水印——左手の明天 ####&#x1f510; &#x1f497; 大家…

GWO优化kmeans

GWO&#xff08;灰狼优化器&#xff09;是一种群体智能优化算法&#xff0c;它模拟了灰狼的社会结构和狩猎行为。GWO算法通过模拟灰狼的等级制度、狩猎策略和搜索机制来寻找问题的最优解。而K-means是一种经典的聚类算法&#xff0c;用于将数据点划分为K个簇。将GWO优化算法应用…

LeetCode.589. N 叉树的前序遍历

题目 589. N 叉树的前序遍历 分析 我们之前有做过LeetCode的 144. 二叉树的前序遍历&#xff0c;其实对于 N 插树来说和二叉树的思路是一模一样的。 二叉树的前序遍历是【根 左 右】 N叉树的前序遍历顺序是【根 孩子】&#xff0c;你可以把二叉树的【根 左 右】想象成【根 孩…

数据结构之线性表插入与删除运算

线性表 线性表的定义 线性表&#xff0c;或称表&#xff0c;是一种非常灵便的结构&#xff0c;可以根据需要改变表的长度&#xff0c;也可以在表中任何位置对元素进行访问、插入或删除等操作。另外&#xff0c;还可以将多个表连接成一个表&#xff0c;或把一个表拆分成多个表…

网站常见的攻击类型有什么,如何针对性防护

在互联网时代&#xff0c;几乎每个网站都存在着潜在的安全威胁。这些威胁可能来自人为失误&#xff0c;也可能源自网络犯罪团伙所发起的复杂攻击。无论攻击的本质如何&#xff0c;网络攻击者的主要动机通常是谋求经济利益。这意味着不管是什么网站类型潜在的威胁一直都存在。 在…

使用傅里叶实现100倍的压缩效果(附Python源码)

傅里叶变换&#xff08;Fourier Transform&#xff09;是一种将一个函数&#xff08;在时间或空间域&#xff09;转换为另一个函数&#xff08;在频率域&#xff09;的数学变换方法。它在信号处理、图像处理、通信等领域有广泛应用。 实现过程 将傅里叶系数核心的1%保留&…

挑战杯 地铁大数据客流分析系统 设计与实现

文章目录 1 前言1.1 实现目的 2 数据集2.2 数据集概况2.3 数据字段 3 实现效果3.1 地铁数据整体概况3.2 平均指标3.3 地铁2018年9月开通运营的线路3.4 客流量相关统计3.4.1 线路客流量排行3.4.2 站点客流量排行3.4.3 入站客流排行3.4.4 整体客流随时间变化趋势3.4.5 不同线路客…

【Redis】理论进阶篇------Redis的持久化

一、前言 前面学习了Redis的相关的十大数据类型以及用SpringBoot集成我们的Redis的工具代码的书写。从这篇文章开始&#xff0c;就会从Redis相关的一些理论&#xff08;也是面试和工作的热点知识&#xff09;如&#xff1a;Redis的持久化、Redis的订阅发布模型、Redis集群环境搭…