基于Spring Boot的银行柜台管理系统

摘 要

相比于以前的传统手工管理方式,智能化的管理方式可以大幅降低银行的运营人员成本,实现了银行柜台的标准化、制度化、程序化的管理,有效地防止了银行柜台的随意管理,提高了信息的处理速度和精确度,能够及时、准确地查询和修正通知信息、卡号账户等信息。

课题主要采用JAVA开发语言、Spring Boot框架和MySQL数据库开发技术以及基于Eclipse的编辑器。系统主要包括通知信息、用户信息、银行信息、卡号账户、存款信息管理、取款信息、转账信息、贷款信息、贷款申请、贷款发放、账单信息、还款信息等功能,从而实现智能化的管理方式,提高工作效率。

关键字:银行柜台管理系统;JAVA语言;Spring Boot框架;

Abstract

Compared to previous traditional manual management methods, intelligent management methods can significantly reduce the cost of bank operators, achieve standardized, institutionalized, and procedural management of bank counters, effectively prevent arbitrary management of bank counters, improve the speed and accuracy of information processing, and be able to promptly and accurately query and correct notification information, card number accounts, and other information.

The topic mainly uses JAVA development language, Spring Boot framework, MySQL database development technology, and Eclipse based editor. The system mainly includes notification information, user information, bank information, card number account, deposit information management, withdrawal information, transfer information, loan information, loan application, loan issuance, bill information, repayment information, and other functions to achieve intelligent management methods and improve work efficiency.

Key words: bank counter management system; JAVA language; Spring Boot framework;

目 录

摘 要 I

Abstract II

1 绪 论 1

1.1研究意义 1

1.2设计目的 1

1.3设计思想 2

2系统开发技术 3

2.1 Spring Boot框架介绍 3

2.2 Java语言介绍 4

2.3 MySQL数据库 4

2.4 B/S架构 5

3系统分析 6

3.1系统的性能 8

3.1.1项目背景 9

3.1.2需求分析 10

3.2系统用例图 10

3.3系统流程图 12

4 系统设计 14

4.1系统功能结构设计图 14

4.2数据库设计 15

4.2.1数据库设计原则 15

4.2.2数据表设计 17

5系统详细设计 22

5.1 管理员功能的实现 22

5.2 用户功能的实现 22

5.3 银行功能的实现 23

6 系统测试 24

6.1软件测试原则 24

6.2软件测试过程 25

6.3测试用例 26

结 论 29

参考文献 30

致 谢 31

1 绪 论

近年来,随着互联网科技的进步和发展,人们的生活水平得到了极大的提高,各行各业也在快速增加,以至于各大银行不断扩大,管理工作也日渐繁重。由于传统的管理方式,人工管理成本高,效率低,还存在信息的不明确,与管理人员沟通方面的压力[1]。所以人工管理方式在很大的程度上存在弊端。给人们的生活带来了非常大的不便,导致不能满足现在社会的需求。现如今利用计算机技术管理成为一个越来越受关注的社会问题,对于能够快速的找到所需信息,也是为了提高管理的效率[2]。

1.1研究意义

社会前进的步伐带动信息化的发展,信息化的建设使得人们生活的节奏加快,至使人们更加注重信息的时效性。陈旧的管理获取信息方式将无法满足人们的需求。从而人们更加关注在线系统管理[3]。在线系统管理可以满足现代人们获取信息实时、便捷等特点,只要有网络的地方,就能迅速查找到想要的信息。

计算机技术已成为人们管理信息的重要工具。能解决人们获取信息更加有效快捷,提高人们的工作效率为重要手段[4]。

1.2设计目的

通过对银行柜台管理内容的学习研究,进而设计并实现一个银行柜台管理系统。系统能实现的主要功能应包括通知信息、卡号账户的一些操作。还有可以正确的为用户服务,准确显示当前信息[5]。

在银行柜台管理系统的前期,即需求分析阶段,我们对用户的需求进行了详细的描述,并且在需求规范中有详细的描述和阐明。根据系统需求的分析,对卡号账户的管理进行了整体的设计。着重对软件模块的设计进行了详细的分析,以达到对系统的需求。重点阐述了系统的划分、接口的确定、各模块间的数据传输、数据结构与模块结构的设计[6]。在下面的概要设计中,将会详细地描述这个阶段中的系统。

1.3设计思想

在开发与设计中,要有正确的开发思路,要对开发环境、语言、架构、操作系统这些方面做一些了解,最后就是完整的思路模式。系统的设计按照以下原则执行:

(1)有效性原则

能够设计的有效,对于用户来说是比较满意的,正常的可以用是在需求,还有是有用的特定意义,都是可以说在有效的范围里。都是用一些操作,还有开发的思维,能够给使用者带来的使用。所谓设计就是需求的想法,很完整就不能够是一个好的系统,可以使用的系统有效性是很高的,而且还有效使用,在实现用户的需求时才能够很好而不会有错误的[7]。

(2)可扩展性

从"可伸缩"的意义来看,许多人认为,讨论改进性能、实现高可用性,甚至是专门的技术和协议。很明显,这些都与可扩充性无关,你必须知道有关速度、性能、可用性、应用平台、网络等等,但是,这并不是一个可扩充的定义。其核心内容是增加一个功能逻辑,或者减少一个功能,逻辑上并不会影响到其他已经编写好的功能模块,这就是可扩展性含义。

系统的可扩展性设计非常重要,但是又非常难以掌握,很多试图通过高并发语言等方式缓解开发者精力,但是,无论采取什么技术,如果应用系统内部是比较的麻烦,比如对数据库的严重依赖,当系统的存取规模达到一定程度时,就会将资源集中在一个或两个数据库服务器上,这时进行分区扩展伸缩就比较困难。

(3)用户的需求原则

在设计系统之前,一般都是先了解一下系统,了解一下系统中的信息在哪里,然后再进行相应的设置。但我们也承认,许多使用者并不能真正了解设计师的想法,并且经过研究发现,系统所服务的对象是广大的用户,并不是掌握这些知识的设计者,所以我们得通过特殊的界面来实现让用户方便使用的系统[8]。

2系统开发技术

2.1 Spring Boot框架介绍

Spring Boot是近几年最为流行的后台开发框架,它的诞生一改过去Spring框架开发中繁琐的配置,极大地简化了Spring应用的搭建和开发。Spring Boot框架不仅保有了Spring框架中的所有优秀特性,还通过使用特定的配置方式,在底层帮助开发人员在工程创建是就预先做了很多配置,这样在开发时就不再需要开发人员过多进行繁琐的配置了。另外在Spring Boot中集成了大量框架,这就使得开发人员不再需要到处寻找在导入开发中需要依赖的jar包,同时也解决了依赖包版本冲突问题,从而提高了依赖包引用的稳定性,从而实现了对Spring应用搭建和开发过程的简化。

2.2 Java语言介绍

Java 最大的两个特点就是功能强大和简单易用。Java可以让程序员进行复杂的编程而不必为储存管理对象等问题所烦恼,把精力和时间更多的放在研发与设计上,极大地提高了开发者的工作效率和工作热情。

2.3 MySQL数据库

MySQL是一种用于数据存储的关系数据库管理系统,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。由于计算机是一个巨大的数据处理工具,所以数据库管理系统在计算机中占有重要地位。数据的管理不仅仅只是数据的存储,而是已经转变成用户需要的许多的数据的管理。其也有很多不同的类型,能够做到有简单的数据管理到大量的数据的管理能力。

这种数据库是比较灵活的方式,优势就在于更加的切合开发者的思考逻辑,所以理解起来也会比较的方便,还能够和其他的语言一起使用,在连接起来就是比较的易懂,同时对于一些基本的查询以及添加的操作也是必须能够掌握的功能。

2.4 B/S架构

B/S结构就是指系统客户端与服务器分离,客户端通过浏览器访问服务端进行操作。

B/S结构目前广泛应用于绝大部分系统搭建中,这种结构摒弃C/S结构客户端服务端不分离的缺点,具有更多的优势:

(1)跨平台性:B/S的标准由标准化组织确立,适用于绝大多数的系统搭建,通用于应用之间。

(2)低维护成本:客户端和服务器端分离,减轻了两端的压力,尤其是客户端,对客户端设备,硬件、软件要求都比较低,并且系统需要升级或维护时,只需要在服务器端升级或维护就可以,使相应的费用减少。

3系统分析

3.1系统的性能

系统的性能是指操作系统完成现有的程序的有效性、稳定性以及响应速度,操作系统完成一个任务时,与系统自身设置、路由的设计、网络性能的测试、设备的使用情况等多个方面都密切相关,要是任何一个环节出现问题,就都会影响整个系统的性能。所以要从网络的设置、系统的操作、硬件的组合、程序的应用等方面综合检查,然后问题出现在哪个部分,可以集中进行解决[9]。

在程序的应用、系统的操作、硬件的组合、网络的设置等方面,影响性能最大的是程序的应用和系统的操作两个方面,因为这两个方面如果出现的问题是不太容易察觉,隐蔽性非常的强。而硬件的组合、网络的设置只要出现问题,一般都能马上发现。主要了解一下系统的操作方面的性能操作思路,程序的应用方面需要具体问题还需要有具体的解决办法[10]。

随着智能设备的快速发展,以及对于网络的深入认识,这种高度分布式架构最终会变为移动计算。但是,随着计算量的日益增大,系统架构师开始将计算任务转移到共享网络的计算上,这样,他们就可以利用共享网络的计算可以无限制的计算量和存储相关的资源,并享受其带来的比较高的可靠性以及低成本。因此,近年来,许多的企业开始向以共享网络计算为中心的更加有效化的方式发展[11]。

3.1.1项目背景

主要是对于银行柜台工作调研,以及对卡号账户、存款信息采集、存储、查询和更新。在银行柜台管理问题上对于现有管理上的不足,用户可以通过后期查询存款信息,从而使银行柜台管理更加便利。

用户的不同,导致所给权限的不同。管理员属于最高权限的用户,对系统所有功能都可以管理,用户和银行权限是管理员给予的,所以只能操作自己权限内的功能,给三种不同用户不同权限与界面,从而让系统更加广泛的使用与管理[12]。

在实际的系统项目开发中,需要怎么做开发和一些现实中的做法是紧密结合在一起的,整体开发的过程还有应用的场景通常也会是一个持续发展的过程,在一个特定的设计中,如何开发,将会对实际的实施流程产生影响,要注意到怎样进行部署和运行。因此,整个系统的研发,都是紧密相连的,要是真的划分为独立的几个阶段,忽视其作为一个整理的综合考虑,每个步骤的实施过程必然会遇到由于上一阶段考虑不周全带来的问题,从而影响整体开发的效率。

设计者往往以需求为中心进行工作,而大多数的功能需求是从总体上进行分析和思考,即从设计者的角度去了解需求。但是要真正理解真实需要,光从开发人员的观点出发还远远不够,还需要从实际的行业发展以及相关地方情况考虑,要从更高的层面去分析,这是真实的需要;同时,我们也要更好的了解他们的用户思维,了解他们的应用情况,和他们的思想,这是他们的需要[13]。

3.1.2需求分析

要想在实际的情况下,开发出一套符合使用者要求的银行柜台管理系统,首先要了解使用者的需求。对银行柜台的需求有深刻的了解,无论设计与开发工作多么优秀,都是一个成功的先决条件,也可以这么说,要不能满足用户需求的程序,是创造不出非常大的使用价值的,而且还给设计者带来很多的不利。需求分析是银行柜台管理系统设计时期的比较重要的一个阶段,它的基本内容是准确地解释出系统将会能够做些什么事情的关键问题,最终完成的是一份完整的系统的使用说明。

(1)有一些功能方面的需求,通过需求分析,可以找出需要完成的几个基本功能模块。性能要求也是指在系统设计的时候,需要满足一定的要求和限制,比如响应时间、信息处理、内存容量、磁盘容量、安全等等。

(2)系统的可靠性要求也是一个必须考虑的问题,它可以将可用性和可靠性结合起来,显示了用户在使用时经常遇到的问题。硬件要求也包括需要处理错误,以表明系统如何应对环境错误。如果自己的系统收到来自其他系统的信息,这些信息违背了某些格式,这时系统应该会有什么样的响应情况。

(3)软件方面的需求还有一些逆向的需求,就是系统不能做的事情。可以说,有很多种不同的要求,而开发人员应该能够准确的理解他们的真正需要,并且可以应用到银行柜台管理系统中。还有应该明确地找出一些虽然不属于当前银行柜台管理系统开发的情况,但是据现在的分析,将来是非常可能会需要的可能需求。经过这个需求的分析,在设计过程中对银行柜台管理系统将来有机会出现的问题有所准备,要能够确实需要的时候可以更加轻松的修改。

3.2系统用例图

在设计系统的过程中,用例图也是系统设计过程中必不可少的模型,如果说系统的结构图可以简洁明了的表示出系统的有关功能模块,那么用例图则可以更为细致的,结合系统中人员的有关分配,能够从细节上描绘出系统中有关功能所完成的具体事件,确切的反映出某个操作以及它们相互之间的内部联系。

其中参与者就是和系统能够发生交互的外在实体,一般可以指系统的某个用户。一个用例图就能对应出系统中的一个功能过程,系统中完整的功能都是由许多不同的用例图所组成的。

系统用例图如图3-1、图3-2、图3-3、图3-4所示。

图3-1 管理员管理用例图

图3-2 用户用例图

图3-3 银行用例图

图3-4 管理员用例图

3.3 系统流程图

流程图就是用它已经特定的图形符号以及相应的线条,用来展现出系统在执行中的整个的过程。由于这种图形能够很方便的描绘系统的一系列流程,所以它的所有的图形符号是比较关键的,基本都是一个图形符号就能表示某个过程的一个单独的步骤。流程图不只是提供出比较完整、全面的执行过程,而且在整个团队的协作设计过程中,还可以发现其中有可能存在的缺陷以及不足,便于在后续的过程中能够及时的纠正和完善系统。

登录流程图和添加信息流程图分别如图3-5、图3-6所示。

图3-5 登录流程图

图3-6 添加信息流程图

4 系统设计

4.1系统功能结构设计图

本次系统所涉及到的有关的功能,都是用功能结构图来简洁和清晰的表示出来,功能结构图就是能够把比较复杂的功能结构用图的形式清晰的描绘下来,并且为后续的设计以及测试等模块提供了明确的方向,在构思功能结构图的时候,便可以给设计的过程带来一定的思维导向,不至于在设计过程中有所遗漏,可以尽可能的明确系统所涉及到的功能。

系统的功能结构图如图4-1所示。

图 4-1系统功能结构图

4.2数据库设计

4.2.1数据库设计原则

学习程序设计,如果要了解数据库管理系统或者是根据需求而制定的系统接口,就必须创建一种数据库管理系统的模式,用来保存数据资料,这样当在应用编程过程中时候,就不需要再向操作系统页面上加载信息,进而增加了整个系统的工作效率。信息库管理系统中保存着许多数据,应该说是一个管理信息系统建设的中心和基础,而信息库管理系统也为管理信息系统建设提出了新增、删除、更改和搜索的操作功能,使管理信息系统建设能够迅速地查询所需要的数据,而不会直接从程序代码中查找。信息库管理系统通过将信息表的各个组成部分按照特定的方法准确地合并,排序和组成信息库管理系统。

通过对银行柜台管理系统的主要功能信息进行规划并分为若干功能实体信息,实体信息将使用E-R图加以表示,本系统的主要功能实体图如图4-2、图4-3、图4-4、图4-5所示。

图4-2用户信息实体图

图4-3银行信息实体图

图4-4卡号账户实体图

图4-5存款信息实体图

4.2.2 数据表设计

在关系数据E-R图中,分析并创建数据表,数据表用来记录信息,数据表关系由多个数据表组成,下面介绍的是数据表各个字段信息如下表所示。

表4-1:配置文件

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键

主键

name varchar 100 配置参数名称

value varchar 100 配置参数值

表4-2:通知信息

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键

主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

biaoti varchar 200 标题

yonghuming varchar 200 用户名

xingming varchar 200 姓名

tongzhineirong longtext 4294967295 通知内容

tongzhishijian datetime 通知时间

zhanghao varchar 200 账号

yinxingmingcheng varchar 200 银行名称

表4-3:token表

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键

主键

userid bigint 用户id

username varchar 100 用户名

tablename varchar 100 表名

role varchar 100 角色

token varchar 200 密码

addtime timestamp 新增时间 CURRENT_TIMESTAMP

expiratedtime timestamp 过期时间 CURRENT_TIMESTAMP

表4-4:取款信息

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键

主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

kahao varchar 200 卡号

yinxingmingcheng varchar 200 银行名称

kaxing varchar 200 卡型

yonghuming varchar 200 用户名

xingming varchar 200 姓名

yue float 取款金额

qukuanriqi date 取款日期

zhanghao varchar 200 账号

表4-5:客服反馈

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键

主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

biaoti varchar 200 标题

fankuineirong longtext 4294967295 反馈内容

fankuishijian datetime 反馈时间

yonghuming varchar 200 用户名

xingming varchar 200 姓名

shouji varchar 200 手机

shhf longtext 4294967295 回复内容

表4-6:卡号账户

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键

主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

kahao varchar 200 卡号

yinxingmingcheng varchar 200 银行名称

kaxing varchar 200 卡型

yonghuming varchar 200 用户名

xingming varchar 200 姓名

yue float 余额

bankariqi date 办卡日期

zhanghao varchar 200 账号

表4-7:还款信息

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键

主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

yinxingmingcheng varchar 200 银行名称

yonghuming varchar 200 用户名

xingming varchar 200 姓名

zhangdanjine int 还款金额

haikuanriqi date 还款日期

zhanghao varchar 200 账号

表4-8:转账信息

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键

主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

kahao varchar 200 卡号

yinxingmingcheng varchar 200 银行名称

kaxing varchar 200 卡型

zhuanzhangkahao varchar 200 转账卡号

yonghuming varchar 200 用户名

xingming varchar 200 姓名

yue float 转账金额

zhuanzhangriqi date 转账日期

beizhu longtext 4294967295 备注

zhanghao varchar 200 账号

表4-9:贷款信息

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键

主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

yinxingmingcheng varchar 200 银行名称

daikuanedu int 贷款额度

haikuanlilv varchar 200 还款利率

daikuanyaoqiu longtext 4294967295 贷款要求

fujian longtext 4294967295 附件

haikuanshijian varchar 200 还款时间

zhanghao varchar 200 账号

表4-10:账单信息

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键

主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

dingdanbianhao varchar 200 订单编号

yinxingmingcheng varchar 200 银行名称

yonghuming varchar 200 用户名

xingming varchar 200 姓名

zhangdanjine float 账单金额

fabushijian datetime 发布时间

zhanghao varchar 200 账号

表4-11:贷款申请

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键

主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

yinxingmingcheng varchar 200 银行名称

daikuanedu int 贷款额度

daikuanjine int 贷款金额

haikuanshijian varchar 200 还款时间

zhanghao varchar 200 账号

shenqingwenjian longtext 4294967295 申请文件

shenqingneirong longtext 4294967295 申请内容

shenqingshijian datetime 申请时间

yonghuming varchar 200 用户名

xingming varchar 200 姓名

shenfenzheng varchar 200 身份证

shouji varchar 200 手机

sfsh varchar 200 是否审核 待审核

shhf longtext 4294967295 审核回复

表4-12:用户

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键

主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

yonghuming varchar 200 用户名

mima varchar 200 密码

xingming varchar 200 姓名

xingbie varchar 200 性别

shenfenzheng varchar 200 身份证

shouji varchar 200 手机

表4-13:贷款发放

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键

主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

dingdanbianhao varchar 200 订单编号

yinxingmingcheng varchar 200 银行名称

fangkuanjine float 放款金额

yonghuming varchar 200 用户名

xingming varchar 200 姓名

fafangshijian datetime 发放时间

zhanghao varchar 200 账号

表4-14:银行

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键

主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

zhanghao varchar 200 账号

mima varchar 200 密码

yinxingmingcheng varchar 200 银行名称

fuzeren varchar 200 负责人

xingbie varchar 200 性别

zixundianhua varchar 200 咨询电话

表4-15:存款信息

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键

主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

kahao varchar 200 卡号

yinxingmingcheng varchar 200 银行名称

kaxing varchar 200 卡型

yonghuming varchar 200 用户名

xingming varchar 200 姓名

yue int 存款金额

cunkuanriqi date 存款日期

zhanghao varchar 200 账号

表4-16:用户表

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键

主键

username varchar 100 用户名

password varchar 100 密码

role varchar 100 角色 管理员

addtime timestamp 新增时间 CURRENT_TIMESTAMP

5系统详细设计

5.1 管理员功能的实现

管理员的登陆界面包括管理员的账号、密码,其中就是已有的账号,还有需要注册的账号。只要管理员在账号上注册,注册信息就会被录入 MySQL数据库,有一个资料库,只要输入成功,就可以登陆,然后进入主页的管理。管理员登录界面如图5-1所示。

图5-1 管理员登录界面图

管理员登录到银行柜台管理系统可以查看系统首页、个人中心、通知信息管理、用户管理、银行管理、卡号账户管理、存款信息管理、取款信息管理、转账信息管理、贷款信息管理、贷款申请管理、贷款发放管理、账单信息管理、还款信息管理等功能进行详细操作,如图5-2所示。

图5-2管理员功能界面图

管理员点击通知信息管理;在通知信息管理页面输入标题、用户名、姓名、通告时间、账号、银行名称等信息,进行查询或删除通知信息等操作;如图5-3所示。

图5-3通知信息管理界面图

管理员点击用户管理;在用户管理页面输入用户名、姓名、性别、身份证、手机等信息,进行查询,新增或删除用户信息等操作;如图5-4所示。

图5-4用户管理界面图

管理员点击银行管理;在银行管理页面对账号、银行名称、负责人、性别、咨询电话等信息,进行查询或删除银行信息等操作;如图5-5所示。

图5-5工作汇报管理界面图

管理员点击卡号账户管理;在卡号账户管理页面对 卡号、银行名称、卡型、用户名、姓名、余额、办卡日期、账号等信息,进行查询或删除卡号账户等操作;如图5-6所示。

图5-6卡号账户管理界面图

管理员点击存款信息管理;在存款信息管理页面对卡号、银行名称、卡型、用户名、姓名、存款金额、存款日期、账号等信息,进行查询或删除存款信息等操作;如图5-7所示。

图5-7存款信息管理界面图

管理员点击取款信息管理;在取款信息管理页面对卡号、银行名称、卡型、用户名、姓名、取款金额、取款日期、账号等信息,进行查询或删除取款信息等操作;如图5-8所示。

图5-8取款信息管理界面图

管理员点击转账信息管理;在转账信息管理页面对卡号、银行名称、卡型、转账卡号、用户名、姓名、转账金额、转账日期、账号等信息,进行查询或删除转账信息等操作;如图5-9所示。

图5-9转账信息管理界面图

管理员点击贷款申请管理;在贷款申请管理页面对银行名称、贷款颖度、贷款金额、还款时间、账号、申清文件、申清时间、用户名、姓名、审核回复、审核状态等信息,进行查询或删除贷款申请等操作;如图5-10所示。

图5-10贷款申请管理界面图

5.2 用户功能的实现

用户登录界面,首先双击打开系统,连上网络之后会显示出本系统的登录界面,这是进入系统的第初始页面"登录",能成功进入到该登录界面则代表系统的开启是成功的,接下来就可以操作本系统所带有的其他所有的功能,如图5-11所示。

图5-11用户登录界面

用户登录到银行柜台管理系统可以查看系统首页、个人中心、通知信息管理、卡号账户管理、存款信息管理、取款信息管理、转账信息管理、贷款信息管理、贷款申请管理、贷款发放管理、账单信息管理、还款信息管理等功能进行详细操作,如图5-12所示。

图5-12用户功能界面图

5.3 银行功能的实现

银行登录界面,首先双击打开系统,连上网络之后会显示出本系统的登录界面,这是进入系统的第初始页面"登录",能成功进入到该登录界面则代表系统的开启是成功的,接下来就可以操作本系统所带有的其他所有的功能,如图5-13所示。

图5-13银行登录界面

银行登录到银行柜台管理系统可以查看系统首页、个人中心、通知信息管理、用户管理、卡号账户管理、存款信息管理、取款信息管理、转账信息管理、贷款信息管理、贷款申请管理、贷款发放管理、账单信息管理、还款信息管理等功能进行详细操作,如图5-14所示。

图5-14银行功能界面图

6 系统测试

系统的测试是必须的,需要知道的是这个阶段不是单独的,而是在全部的时间进行。这么做可以及时发现问题,还能找到产生矛盾的地方,并且可以尝试修改,这样就能完善系统。对于被测试的系统,都可以找到一些问题,而且还可以找到对应的位置在哪。其目的是对于整体的测试,发现需求中存在的矛盾,就可以做出修改了。测试的过程是对应于整体,有对软件的测试,发现需求的符合度,接下来,就是对数据的检测,以及对硬件的检测[14]。

在软件测试规划中,必须了解测试流程,包括功能概述,测试周期,测试方法,测试范围,测试配置,测试技巧,测试交流,风险分析等。对于一些开发的人员,是可以知道测试方法,找到测试过程的一些的问题,然后可以应对这些问题。

6.1软件测试原则

系统的项目开始启动,系统测试也就是正式开始。软件的是有很多特殊性质,其一些测试也是整体的时间,不是一个单独的过程,因为有可能在所以时间段里,可以有不同的问题。从需求分析、系统设计的过程中,就可以进行系统的测试,制定相应的测试内容和设计文档,并且在整个开发过程中,都要进行系统的审核和确认,只有这样,才能更快的发现错误,从而提升系统的质量。为了更早地进行检测,让测试人员可以早知道测试难度,还有进行工作的准备,提前了解关于问题的风险,便于能够提高测试的效率,而且还能保证开发质量,还能够避免风险存在于测试里的,可以有更加完善的方案[15]。

在测试过程中有一些问题,还有一些不足能被发现,这样测试可以使软件中有比较少的问题。有些人觉得只要能够通过软件测试的系统,就不会再存在任何问题,便可以比较放心的使用。这种把软件测试夸大的思想是违反原则的。总的来说即使软件测试能够发现任何问题,也不足以证明软件当中就没有任何的问题,系统就是完全正确的。软件测试必须很快地到软件开发过程中,这样就可以很快的地发现软件缺陷,并且越快发现软件问题,软件的修复成本就会越小。可以让测试人员加入需求的开发过程,以确保需求的可以测试的性质、正确性等,便可以更加有效地节省开发带来的成本。在有关于测试的环节当中也会尽早的找到问题,要是开发人员在某个模块发现了问题,那么在这模块中或许会存在不止一个问题。现在软件都比较复杂,而且测试也有难度,几乎不能有测试可以是完全。

测试是在一定的顺序,每个不同的阶段能够由出现的问题,可以了解到它的风险,这样也可以加强测试,从而可以保证软件使用时的质量。测试是需要比较早开始的,一方面就是保证软件的质量,有效的降低风险以及成本。测试的人员一般在分析需求时候就已经开始测试准备了,使得系统的不足在需求或者设计阶段就可以被发现出,就这点来说发现越早,能够修复的成本就越小。测试的设计可以确定测试的有效性以及效率问题,测试的工具只是提升了测试的效率,而非测试本身。在设计一个测试案例时,是还能改善可靠性,可以用更有效的方法。

6.2软件测试过程

软件测试中每当用户提出新的功能需求时,测试人员需要与开发人员一起做测试,这样测试人员就会对本次测试有个比较清晰的认识,具体要完成什么,都有什么功能等。而且当集成测试在完成后,开发的模块就会被联接在一起,从而形成一个完整的程序。每个各模块间的接口存在的许多缺陷都被消除,就可以进入了确认测试的阶段。确认测试是按照软件的需求规格,对软件进行评估是确保它否满足需求规格,然后决定最后的软件是否正常。

在测试规范后,就可以进行测试用例的编写,主要根据功能模块而展开,例如界面包括哪些操作,其中的操作是否可以正常进行,然后根据相关功能来设计,可以根据不同的情况来设计,对于一些测试过程中出现的问题等,以便查找测试任务的相关情况。

(1)单元测试

这种测试是一种用代码的编写,然后完成的测试方法,在整个检测流程中,是一个非常关键的步骤。在一项有关的程序中,可以进行测试的代码,这种的步骤和实现功能的运行过程是一样的,更加能够突出实现的时候,有关于一些数据的正确还有难易的问题。而且单元测试都由开发人员自己来实现。通常都是开发人员有义务编写相关的功能模块代码,由于对于这些问题的出现,会比别人更加的清楚。有目的单元测试,就是能够出现相应地方代码的执行行为与我们预期的具有一样的效果。一般是由开发人员查看相关代码来查找出问题,而且同样是不同的开发人员相互查看对方的代码,这样才能发现更多的问题。在使用工具扫描程序时,可以根据程序的一些错误的特征,是能够发现而且记录代码中的错误原因。还有就是可以使用工具能够自动生成测试用例,而且也能执行相关程序的测试,这种方式也是由于发现一些行为上的特征,并且报告错误的原因,这种测试的方法只能够发现一些明显的错误的问题,对一些不明显的错误就不能测试出原因所在,就比如一直简单的加法函数,其中的错误是相对比较简单的,但是以上的测试方法仍不能发现,是由于这种测试工具不可能自动的理解代码的功能。

(2)系统测试

所谓系统测试,就是把被确定的软件系统,包括电脑的硬件和网络,都是一个整体,它可以完成整个系统的检测和验证,系统试验是对整个软件系统进行的一次试验,其目的在于检测该系统能否达到要求,发现一些和需求规定不一样或者有歧义的地方,从而能够提出更加有效的方案。这里要有出现的任何问题,为了能够找到出现问题的位置,就是需要有调试的过程,然后进一步的改正。

这种测试也能够发现和规定不一样的时候,或者是出现的一些矛盾。都是需要提前有关于规定的需求做出比较,做出能够在实际的应用里,可以运行的一些对应的测试过程的用例。

(3)集成测试

集成测试是在单元测试后面开始的,将确定测试单元之间可以相互协调的运行。由于在很大的情况中,需要的系统不是有单独的几个或者一个人来完成,所以在前面的测试过程是,通过负责独立部分的开发者,同时也要负责这里的功能测试。但是如果要是把所以的测试部分都整合在一起,就可以发生一些问题。所以这里的测试是能够说明,不同的负责者的模块可以完全的正常执行,通常在执行集成测试之前,是必须先执行单元测试。

集成测试通过将逻辑上相关的两个或许多的功能模块连接起来执行增量的测试,接着又加入更多功能模块,以及对其功能进行的测试,一直到完成所有功能模块的集然后成功测试为止。集成测试又可以是自上而下方法,一般从测试最顶层的功能模块开始,接着一步步地降到最低的功能模块,其中测试是按照软件的具体控制流程从上到下的进行。还可以是自底向上的集成测试,可以很快的发现底层功能模块的问题,能够提高测试的效率。如果要是了解整个的框架,就必须是对应的功能测试在可以检测完的条件。

测试过程中的集成是相对容易的,而且用到的方法也是不太难,根据对应的方法,做出测试用例的需要也比较少,但是由于无法避免的功能模块间接口的问题,所以能够一次运行成功的可能性比较小。而且要是一次集成的功能模块数量比较多,在集成测试后有可能还出现大量的错误,这样系统的错误定位以及相关的修改就会存在比较大的问题,即便能够完成集成测试,但是有可能会留下很多的错误进入系统测试。

6.3测试用例

部分系统测试用例如表6-1所示。

表 6-1 测试用例表

测试功能、流程 预期结果 实际结果 结论

测试管理登录。管理员在登陆页面输入对应信息可以进入主页面 登陆成功,

之后跳转页面 登陆成功,

成功跳转页面 测试成功

测试注册。用户在登陆页面输入对应信息可以进入主页面 注册成功,

之后跳转登录页面 注册成功,

成功跳转登录页面 测试成功

测试登录。用户在登陆页面输入正确用户名和密码可以进入主页面 登录成功,之后跳转主页面 登录成功,之后跳转主页面 测试成功

搜索测试。用户输入查找内容,得到相关信息 搜索成功,显示搜索信息内容 搜索成功,显示搜索信息内容 测试成功

结 论

在本次毕业设计中,我使用JAVA语言,并选择MySQL作为后台数据库进行访问和修改。在设计之初,我对系统逻辑功能的具体实现也很纠结,因为我对银行柜台管理的概念还比较模糊,期间我也在网上查询了大量的信息,清楚地了解了现实生活银行柜台管理的主要对象和管理需要完成的基本功能。

而在这个过程中也遇到了很多困难,主要有系统逻辑功能的不恰当和系统设计上的错误,当在自己获取信息时无法解决,我会与同学和老师商量和讨论,所以在这个过程中,也让我知道认识到自己的不足和团队的力量是最大的,无论是在学习还是工作中,要融入集体,这样自己才会成长得更快。

当然,在本次设计中,由于时间的不足和本人能力的限制,功能还不完善,对于论文的不足之处,希望在今后的学习中不断改进,使本系统更接近实际操作。

参考文献

[1]王晓川. 课程管理系统的设计与实现[D]. 福州:福州大学硕士学位论文, 2019:3-4.

[2]张立立,张振坤,刘明钊,等.基于深度学习技术的超市库存收费管理系统设计与实现[J].电子器件,2021,44(01):231-235.

[3]徐明. 人工智能开源硬件与JAVA编程实践[M]. 重庆:重庆大学出版社, 2020:229-235.

[4]Ravishankar Chityala,Sridevi Pudipeddi. Image Processing and Acquisition using JAVA[M].CRC Press:2020:67-73.

[5]王学军,胡畅霞,韩艳峰. JAVA程序设计[M]. 北京:人民邮电出版社, 2018:236-247.

[6]Speight April. Bite‐Size JAVA®:An Introduction to JAVA Programming[M].John Wiley & Sons, Inc:2020:43-54.

[7]刘奥卓,曹煜辉,周岳斌.基于树莓派的车辆识别与车流监测系统的设计[J].机械管理开发,2020,35(01):170-172.

[8]葛笑飞. 基于OpenCV的车牌自动识别系统的研究与实现[D]. 南京:东南大学硕士学位论文, 2019:2-3.

[9]潘伟清.浅谈银行柜台管理系统[J].通讯世界,2019:337-338.

[10] Jesper Wisborg Krogh. MySQL Connector/JAVA Revealed[M].Apress, Berkeley, CA:2018:33-42.

[11] 肖睿,程宁,田崇峰,等. MySQL数据库应用技术及实战[M]. 北京:人民邮电出版社, 2020:177-185.

[12] 江小静,解祥新,杭益柳,等.企业管理系统的设计与实现[J].无线互联科技,2020,17(21):35-36.

[13] 瞿中,宋琦,刘玲慧,等. 软件工程[M].北京:人民邮电出版社, 2019:409.

[14] 查燕.软件测试的策略和方法[J].信息与电脑(理论版),2021,33(10):67-69.

[15] 张凤霞.大数据背景下软件测试研究[J].电子技术与软件工程,2021:38-39.

致 谢

四年的本科学习很快就要结束了。这段时间的校园生活充满了温暖和幸福。在家人的支持下,在老师的悉心指导下,在同学们的热情支持下,我度过了充实的本科阶段。

首先,我要感谢我的导师。我的论文是在导师的悉心指导下完成的。从论文最初的选题、构思到后来的写作,导师都给予了我悉心的指导。在我完成初稿后,我的导师花时间仔细修改了我的论文,并提供了很多中肯的指导,使我的研究和写作过程相对顺利。我想借此机会向我的导师表达我深深的谢意。

其次,我还要感谢我的其他大学老师们。正是因为他们严格、无私、高质量的教学,我在这些年的学习中获得了专业知识,为我的论文写作奠定了坚实的理论基础。我还要感谢四年来和我一起生活学习的本科同学和室友。我真诚地感谢他们在学习和生活上的鼓励和帮助。愿我们的友谊天长地久!

我也要感谢我的父母在我学习期间无微不至的关心和照顾。正是他们的理解和支持,让我能够专心学习。同时,我也要感谢四年来同学们对我的包容和帮助。他们让我的生活每天都充满了激情和意义。最后,再次向母校的老师们表示衷心的感谢和良好的祝愿!感谢您的辛勤栽培。祝所有的老师幸福健康!

相关推荐
测开小菜鸟1 小时前
使用python向钉钉群聊发送消息
java·python·钉钉
P.H. Infinity2 小时前
【RabbitMQ】04-发送者可靠性
java·rabbitmq·java-rabbitmq
生命几十年3万天3 小时前
java的threadlocal为何内存泄漏
java
caridle3 小时前
教程:使用 InterBase Express 访问数据库(五):TIBTransaction
java·数据库·express
^velpro^3 小时前
数据库连接池的创建
java·开发语言·数据库
苹果醋33 小时前
Java8->Java19的初步探索
java·运维·spring boot·mysql·nginx
秋の花3 小时前
【JAVA基础】Java集合基础
java·开发语言·windows
小松学前端3 小时前
第六章 7.0 LinkList
java·开发语言·网络
Wx-bishekaifayuan3 小时前
django电商易购系统-计算机设计毕业源码61059
java·spring boot·spring·spring cloud·django·sqlite·guava
customer083 小时前
【开源免费】基于SpringBoot+Vue.JS周边产品销售网站(JAVA毕业设计)
java·vue.js·spring boot·后端·spring cloud·java-ee·开源