目 录
摘要
随着信息技术的飞速发展,大数据、云计算、人工智能等先进技术在金融领域的应用日益广泛。特别是在银行业,客户服务作为银行核心竞争力的重要组成部分,其智能化、个性化的需求愈发凸显。传统的银行客户服务模式已经难以满足现代客户对效率、便捷、智能的需求。因此,基于大数据的智能银行客户服务系统的设计与实现成为了银行业发展的重要方向。
智能银行客户服务系统通过集成大数据技术,能够实现对海量客户数据的收集、存储、分析和挖掘,从而深入了解客户的消费习惯、风险偏好、行为特征等,为客户提供更加精准、个性化的服务。
Spring Boot作为一种轻量级的Java开发框架,具有快速构建、易于集成、易于部署等特点,在开发Web应用方面表现出色。基于Spring Boot的智能银行客户服务系统可以实现高效的业务处理、灵活的功能扩展以及稳定的系统运行。
本文旨在探讨基于大数据的智能银行客户服务系统的设计与实现。通过对系统的需求分析、架构设计、功能实现等方面的阐述,以期为银行业在智能化客户服务领域提供有益的参考和借鉴。
关键词:JAVA;SpringBoot;智能银行客户服务系统
Abstract
With the rapid development of information technology, advanced technologies such as big data, cloud computing, and artificial intelligence are increasingly being applied in the financial field. Especially in the banking industry, customer service, as an important component of the bank's core competitiveness, has increasingly highlighted its demand for intelligence and personalization. The traditional bank customer service model is no longer able to meet the modern customer's needs for efficiency, convenience, and intelligence. Therefore, the design and implementation of an intelligent banking customer service system based on big data has become an important direction for the development of the banking industry.
The intelligent banking customer service system integrates big data technology to collect, store, analyze, and mine massive customer data, thereby gaining a deeper understanding of customer consumption habits, risk preferences, behavioral characteristics, etc., and providing customers with more accurate and personalized services.
Spring Boot, as a lightweight Java development framework, has the characteristics of fast construction, easy integration, and easy deployment, and performs well in developing web applications. The intelligent banking customer service system based on Spring Boot can achieve efficient business processing, flexible functional expansion, and stable system operation.
This article aims to explore the design and implementation of an intelligent banking customer service system based on big data. By elaborating on the requirements analysis, architecture design, and functional implementation of the system, we aim to provide useful reference and inspiration for the banking industry in the field of intelligent customer service.
Keywords:JAVA; SpringBoot; Intelligent banking customer service system
1 绪论
1.1 研究背景与意义
随着全球化和数字化浪潮的推进,银行业正面临着前所未有的机遇与挑战。传统的银行客户服务模式,虽然在一定程度上满足了客户的需求,但在效率、个性化以及智能化方面仍显不足。特别是在信息爆炸的时代背景下,银行需要处理和分析的数据量呈现出爆炸性增长,这对银行的客户服务能力提出了更高的要求。
基于大数据的智能银行客户服务系统的设计与实现,正是为了应对这一挑战而诞生的。该研究背景源于对银行客户服务模式创新的追求,以及对大数据深入探索。通过将大数据技术应用于银行客户服务领域,可以实现对海量客户数据的深入挖掘和分析,从而更准确地把握客户的需求和偏好,为客户提供更加个性化、智能化的服务。
这一研究的意义在于,它不仅能够提升银行客户服务的效率和质量,增强银行的竞争力,还能够推动银行业在数字化转型的道路上迈出更加坚实的步伐。此外,基于大数据的智能银行客户服务系统的成功实践,还可以为其他行业在大数据应用方面提供有益的借鉴和参考,推动整个社会的数字化转型进程。
因此,基于大数据的智能银行客户服务系统的设计与实现,不仅是一项具有创新性和实用性的研究,也是银行业应对数字化挑战、提升客户服务水平的重要举措。
在国内,随着金融科技的飞速发展,大数据和人工智能技术在银行客户服务领域的应用日益广泛。许多国内银行已经开始积极探索和实践基于大数据的智能客户服务系统。这些系统主要聚焦于客户画像的精准构建、智能客服机器人的开发、风险控制的智能化等方面。例如,通过整合客户的交易数据、行为数据等多维度信息,银行可以构建出更为精准的客户画像,进而实现个性化推荐和风险控制。此外,一些国内银行还引入了自然语言处理、语音识别等人工智能技术,提升了智能客服机器人的交互能力和服务效率。
国外研究现状:
在国外,尤其是金融科技发达国家,基于大数据的智能银行客户服务系统的研究与实践已经相对成熟。许多国际知名银行,如高盛、摩根大通等,都已经在客户服务领域广泛应用了大数据和人工智能技术。这些银行不仅通过大数据技术实现对客户需求的深度挖掘,还通过人工智能技术提升了客户服务的自动化和智能化水平。例如,一些国际银行已经能够实现通过智能机器人完成客户咨询、投诉处理等业务,大大提高了客户服务的效率和质量。
研究趋势与展望:
总体来看,无论是国内还是国外,基于大数据的智能银行客户服务系统的研究与实践都在不断深入。未来,随着大数据和人工智能技术的进一步发展,这一领域的研究将更加注重客户服务的个性化和智能化,以及风险控制的精准性和实时性。同时,随着金融科技的深度融合,未来基于大数据的智能银行客户服务系统还将与区块链、云计算等其他先进技术相结合,共同推动银行业在数字化转型的道路上取得更大的突破和发展。
本文共分为六章,章节内容安排如下:
第一章为引言,此章节对所设计和实现的系统的背景和状况以及意义进行详细的论述以及说明,同时进行了论文整体框架的结构的简要介绍。
第二章为系统需求分析,章节所做的主要的工作是对系统进行了技术、经济和操作方面可行性的分析;对系统实行了总体功能的需求、用例分析。
第三章为系统的设计,主要是对系统的功能结构进行设计,并对系统数据库的概念结构以及物理结构的设计进行了分析。
第四章就是对系统的实现,根据系统功能的划分,分别的对系统所需要实现的用户功能和后台管理员功能进行了分析和说明。
第五章:系统测试。主要对系统的部分界面进行测试并对主要功能进行测试
2 系统分析
系统需求分析是系统开发的一个关键环节,它在系统的设计和实现上起到了一个承上启下的位置。系统需求分析是对所需要做的系统进行一个需求的挖掘,如果分析的准确可以精准的解决现实中碰到的问题。如果分析不到位会影响后期系统的实现。一个系统的优秀程度需求分析也是占据了非常大的比例,如果需求分析不到位,后面的系统设计要实现就是一个偏离导航的设计。
系统可行行分析是对系统可行性进行一个探讨。在探讨系统的可行性上主要从技术上的可行性和经济上的可行性以及法律层面的可行性上进行分析,如果三个层面度通过,我们则认为系统是比较可行的。
2.1.1 技术可行性分析
智能银行客户服务系统设计与实现,在实现这个系统所采用的技术方案是基于JAVA语言,SpringBoot框架,MYSQL数据库,在大学的学习中这两门课程都已经学过,而且自己也用这些技术开发过小的项目,在平时的课程设计以及作业也经常用到JAVA和MYSQL,在技术上实现自己的自主开发是可行的。
智能银行客户服务系统在经济上具有高度的可行性。首先,Java作为一种成熟、稳定且广泛应用的编程语言,其开发成本相对较低,且拥有丰富的开源资源和社区支持,这有助于降低系统的开发成本。其次,该系统的运行和维护成本也相对较低,因为Java平台具有良好的跨平台性,可以在多种操作系统上运行,无需为不同的平台购买额外的软件和硬件。因此,从经济角度来看,智能银行客户服务系统是一个可行的项目。
系统从法律层面上来没有对第三方有其他放有法律层面的问题,系统数据库采用的Mysql 开源社区数据库、框架采用的是开源的SpringBoot。系统资讯和相关内容也是法律层面的。在源码的管理上采用git开源进行管理,所以在法律可行性上是成立的。
智能银行客户服务系统划分了普通用户和管理员这两大部分。
(一)普通用户功能介绍:
注册登录: 提供用户注册账号并提供必要信息,以及通过账号密码登录系统,确保用户身份的合法性和安全性。
后台首页: 展示系统概况、最新数据和快捷入口,方便用户监控个人财务情况。
银行卡信息管理: 用户可以管理自己的银行卡信息,包括添加新卡、编辑卡信息、解绑卡等操作。
存款信息管理: 用户可以查看自己的存款信息,包括存款余额、存款历史记录等。
支付信息管理: 用户可以管理自己的支付信息,包括添加新支付方式、设置默认支付方式等。
信用卡信息管理: 用户可以管理自己的信用卡信息,包括申请新卡、查看账单、还款等。
交易信息管理: 用户可以查看自己的交易记录,包括存取款记录、消费记录等。
还款信息管理: 如果用户持有信用卡,可以管理信用卡的还款信息,包括还款金额、还款日期等。
挂失信息管理: 用户可以进行银行卡或信用卡的挂失操作,保障资金安全。
挂失处理管理: 用户可以查看挂失处理进度,并跟踪挂失解除流程。
银行公告管理: 用户可以查看银行发布的公告信息,了解银行动态和服务变更。
理财推荐管理: 用户可以接收基于大数据分析的个性化理财推荐,帮助用户进行资产配置和投资决策。
登录: 提供安全的管理员登录功能,确保只有授权的管理员可以访问系统后台。
系统用户: 管理系统用户,包括添加新用户、编辑用户信息、删除用户等操作,以确保系统安全性。
银行卡信息管理: 管理用户的银行卡信息,包括查看、编辑、解绑用户银行卡等操作。
存款信息管理: 管理用户的存款信息,包括查看存款余额、存款历史记录等。
支付信息管理: 管理用户的支付信息,包括添加新支付方式、设置默认支付方式等。
信用卡信息管理: 管理用户的信用卡信息,包括申请新卡、查看账单、还款等。
交易信息管理: 管理用户的交易记录,包括存取款记录、消费记录等。
还款信息管理: 管理用户的信用卡还款信息,包括还款金额、还款日期等。
挂失信息管理: 管理用户的挂失信息,包括查看挂失状态、处理挂失请求等。
挂失处理管理: 处理用户的挂失请求,包括审核挂失申请、解除挂失等操作。
银行公告管理: 管理银行发布的公告信息,包括添加新公告、编辑公告内容等。
理财推荐管理: 管理基于大数据分析的理财推荐服务,包括配置推荐策略、监控推荐效果等。
智能银行客户服务系统的非功能性需求比如智能银行客户服务系统的安全性怎么样,可靠性怎么样,性能怎么样,可拓展性怎么样等。具体可以表示在如下2-1表格中:
表2-1智能银行客户服务系统非功能需求表
安全性 | 主要指智能银行客户服务系统数据库的安装,数据库的使用和密码的设定必须合乎规范。 |
可靠性 | 可靠性是指智能银行客户服务系统能够按照用户提交的指示进行操作,经过测试,可靠性90%以上。 |
性能 | 性能是影响智能银行客户服务系统占据市场的必要条件,所以性能最好要佳才好。 |
可扩展性 | 比如数据库预留多个属性,比如接口的使用等确保了系统的非功能性需求。 |
易用性 | 用户只要跟着智能银行客户服务系统的页面展示内容进行操作,就可以了。 |
可维护性 | 智能银行客户服务系统开发的可维护性是非常重要的,经过测试,可维护性没有问题 |
2.3 系统用例分析
智能银行客户服务系统的完整UML用例图分别是图2-1、图2-2。
图2-1就是普通用户角色的用例展示。

图2-2 智能银行客户服务系统注册用户角色用例图
图2-2就是管理员角色的用例展示。
图2-2智能银行客户服务系统管理员角色用例图
2.4 系统流程分析
2.4.1系统开发流程
智能银行客户服务系统开发时,首先进行需求分析,进而对系统进行总体的设计规划,设计系统功能模块,数据库的选择等,本系统的开发流程如图2-3所示。
图2-3系统开发流程图
2.4.2 用户登录流程
为了保证系统的安全性,要使用本系统对系统信息进行管理,必须先登陆到系统中。如图2-4所示。
图2-4登录流程图
2.4.3 系统操作流程
用户打开并进入系统后,会先显示登录界面,输入正确的用户名和密码,系统自动检测信息,若信息无误,则用户会进入系统功能界面,进行操作,否则会提示错误无法登录,操作流程如图2-5所示。
图2-5 系统操作流程图
2.4.4 添加信息流程
管理员可以对支付信息、信用卡信息等进行信息的添加,用户可以对自己权限内的信息进行添加,输入信息后,系统会自行验证输入的信息和数据,若信息正确,会将其添加到数据库内,若信息有误,则会提示重新输入信息,添加信息流程如图2-6所示。
图2-6添加信息流程图
2.4.5 修改信息流程
管理员可以对支付信息、信用卡信息等进行的修改,用户可以对自己权限内的信息进行修改,首先进入修改信息界面,输入修改信息数据,系统进行数据的判断验证,修改信息合法则修改成功,信息更新至数据库,信息不合法则修改失败,重新输入。修改信息流程图如图2-7所示。
图2-7修改信息流程图
2.4.6 删除信息流程
管理员可以对支付信息、信用卡信息等进行信息的删除,对要删除的信息进行选中后,点击删除按钮,系统会询问是否确定,若点击确定,则系统会删除掉选中的信息,并在数据库内对信息进行删除,删除信息流程图如图2-8所示。
图2-8删除信息流程图
本章主要通过对智能银行客户服务系统的可行性分析、功能需求分析、系统用例分析、系统流程分析,确定整个智能银行客户服务系统要实现的功能。同时也为智能银行客户服务系统的代码实现和测试提供了标准。
3 系统总体设计
3.1系统概要设计
本智能银行客户服务系统选择B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式。适合在互联网上进行操作,只要用户能连网,任何时间、任何地点都可以进行系统的操作使用。系统工作原理图如图3-1所示:
图3-1 系统工作原理图
3.2系统结构设计
整个系统是由多个功能模块组合而成的,要将所有的功能模块都一一列举出来,然后进行逐个的功能设计,使得每一个模块都有相对应的功能设计,然后进行系统整体的设计。
本智能银行客户服务系统结构图如图3-2所示。

图3-2 系统功能结构图
3.3系统顺序图设计
3.3.1登录模块顺序图
登录模块主要满足了管理员以及用户的权限登录,登录模块顺序图如图3-3所示。

图3-3 登录顺序图
3.3.2添加信息模块顺序图
管理员以及用户登录后均可进行添加信息操作,添加信息模块顺序图如图3-4所示。

图3-4 添加信息顺序图
一个好的数据库可以关系到程序开发的优劣,数据库设计离不开表结构的设计,还有表与表之间的联系,以及系统开发需要设计的数据表内容等信息。在进行数据库设计期间,要结合实际情况来对数据库进行针对性的开发设计。
3.4.1数据库E-R图设计
本智能银行客户服务系统采用的是Mysql数据库,数据存储快,因为智能银行客户服务系统,主要的就是对信息的管理,信息内容比较多,这就需要好好的设计一个好的数据库,分类要清楚,不能添加信息的时候,造成信息太过混乱,设计好的数据库首先就需要先把各个实体之间的关系表达明确,系统的E-R图如下图所示:
下面是整个智能银行客户服务系统中主要的数据库表总E-R关系图。

图3-5 智能银行客户服务系统总E-R关系图
3.4.2 数据库逻辑结构设计
通过上一小节中智能银行客户服务系统中总E-R关系图上得出一共需要创建很多个数据表。在此我主要罗列几个主要的数据库表结构设计。
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | token_id | int | 10 | 0 | N | Y | 临时访问牌ID | |
2 | token | varchar | 64 | 0 | Y | N | 临时访问牌 | |
3 | info | text | 65535 | 0 | Y | N | ||
4 | maxage | int | 10 | 0 | N | N | 2 | 最大寿命:默认2小时 |
5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
7 | user_id | int | 10 | 0 | N | N | 0 | 用户编号: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | auth_id | int | 10 | 0 | N | Y | 授权ID: | |
2 | user_group | varchar | 64 | 0 | Y | N | 用户组: | |
3 | mod_name | varchar | 64 | 0 | Y | N | 模块名: | |
4 | table_name | varchar | 64 | 0 | Y | N | 表名: | |
5 | page_title | varchar | 255 | 0 | Y | N | 页面标题: | |
6 | path | varchar | 255 | 0 | Y | N | 路由路径: | |
7 | position | varchar | 32 | 0 | Y | N | 位置: | |
8 | mode | varchar | 32 | 0 | N | N | _blank | 跳转方式: |
9 | add | tinyint | 3 | 0 | N | N | 1 | 是否可增加: |
10 | del | tinyint | 3 | 0 | N | N | 1 | 是否可删除: |
11 | set | tinyint | 3 | 0 | N | N | 1 | 是否可修改: |
12 | get | tinyint | 3 | 0 | N | N | 1 | 是否可查看: |
13 | field_add | text | 65535 | 0 | Y | N | 添加字段: | |
14 | field_set | text | 65535 | 0 | Y | N | 修改字段: | |
15 | field_get | text | 65535 | 0 | Y | N | 查询字段: | |
16 | table_nav_name | varchar | 500 | 0 | Y | N | 跨表导航名称: | |
17 | table_nav | varchar | 500 | 0 | Y | N | 跨表导航: | |
18 | option | text | 65535 | 0 | Y | N | 配置: | |
19 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | bank_announcement_id | int | 10 | 0 | N | Y | 银行公告ID | |
2 | announcement_title | varchar | 64 | 0 | Y | N | 公告标题 | |
3 | announcement_number | varchar | 64 | 0 | N | N | 公告编号 | |
4 | release_date | date | 10 | 0 | Y | N | 发布日期 | |
5 | announcement_content | text | 65535 | 0 | Y | N | 公告内容 | |
6 | announcement_details | text | 65535 | 0 | Y | N | 公告详情 | |
7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表bank_card_information (银行卡信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | bank_card_information_id | int | 10 | 0 | N | Y | 银行卡信息ID | |
2 | user_account | int | 10 | 0 | Y | N | 0 | 用户账号 |
3 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
4 | opening_bank | varchar | 64 | 0 | Y | N | 开户银行 | |
5 | card_application_date | date | 10 | 0 | Y | N | 办卡日期 | |
6 | bank_card_number | varchar | 64 | 0 | Y | N | 银行卡号 | |
7 | card_amount | int | 10 | 0 | Y | N | 0 | 卡内金额 |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表credit_card_information (信用卡信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | credit_card_information_id | int | 10 | 0 | N | Y | 信用卡信息ID | |
2 | user_account | int | 10 | 0 | Y | N | 0 | 用户账号 |
3 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
4 | opening_bank | varchar | 64 | 0 | Y | N | 开户银行 | |
5 | card_application_date | date | 10 | 0 | Y | N | 办卡日期 | |
6 | bank_card_number | varchar | 64 | 0 | Y | N | 银行卡号 | |
7 | consumption_amount | int | 10 | 0 | Y | N | 0 | 消费金额 |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | deposit_information_id | int | 10 | 0 | N | Y | 存款信息ID | |
2 | user_account | int | 10 | 0 | Y | N | 0 | 用户账号 |
3 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
4 | opening_bank | varchar | 64 | 0 | Y | N | 开户银行 | |
5 | card_application_date | date | 10 | 0 | Y | N | 办卡日期 | |
6 | bank_card_number | varchar | 64 | 0 | Y | N | 银行卡号 | |
7 | deposit_date | date | 10 | 0 | Y | N | 存款日期 | |
8 | deposit_amount | int | 10 | 0 | Y | N | 0 | 存款金额 |
9 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表financial_recommendation (理财推荐)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | financial_recommendation_id | int | 10 | 0 | N | Y | 理财推荐ID | |
2 | product_name | varchar | 64 | 0 | Y | N | 产品名称 | |
3 | product_images | varchar | 255 | 0 | Y | N | 产品图片 | |
4 | product_type | varchar | 64 | 0 | Y | N | 产品类型 | |
5 | product_risk | varchar | 64 | 0 | Y | N | 产品风险 | |
6 | product_revenue | varchar | 64 | 0 | Y | N | 产品收益 | |
7 | revenue_ranking | int | 10 | 0 | Y | N | 0 | 收益排名 |
8 | product_details | text | 65535 | 0 | Y | N | 产品详情 | |
9 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | hits_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
表loss_reporting_and_handling (挂失处理)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | loss_reporting_and_handling_id | int | 10 | 0 | N | Y | 挂失处理ID | |
2 | user_account | int | 10 | 0 | Y | N | 0 | 用户账号 |
3 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
4 | opening_bank | varchar | 64 | 0 | Y | N | 开户银行 | |
5 | card_application_date | date | 10 | 0 | Y | N | 办卡日期 | |
6 | bank_card_number | varchar | 64 | 0 | Y | N | 银行卡号 | |
7 | reporting_lost_time | date | 10 | 0 | Y | N | 挂失时间 | |
8 | details_of_loss_reporting | text | 65535 | 0 | Y | N | 挂失详情 | |
9 | processing_results | text | 65535 | 0 | Y | N | 处理结果 | |
10 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
11 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表loss_reporting_information (挂失信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | loss_reporting_information_id | int | 10 | 0 | N | Y | 挂失信息ID | |
2 | user_account | int | 10 | 0 | Y | N | 0 | 用户账号 |
3 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
4 | opening_bank | varchar | 64 | 0 | Y | N | 开户银行 | |
5 | card_application_date | date | 10 | 0 | Y | N | 办卡日期 | |
6 | bank_card_number | varchar | 64 | 0 | Y | N | 银行卡号 | |
7 | reporting_lost_time | date | 10 | 0 | Y | N | 挂失时间 | |
8 | details_of_loss_reporting | text | 65535 | 0 | Y | N | 挂失详情 | |
9 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | payment_information_id | int | 10 | 0 | N | Y | 支付信息ID | |
2 | user_account | int | 10 | 0 | Y | N | 0 | 用户账号 |
3 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
4 | opening_bank | varchar | 64 | 0 | Y | N | 开户银行 | |
5 | card_application_date | date | 10 | 0 | Y | N | 办卡日期 | |
6 | bank_card_number | varchar | 64 | 0 | Y | N | 银行卡号 | |
7 | payment_date | date | 10 | 0 | Y | N | 支付日期 | |
8 | payment_amount | int | 10 | 0 | Y | N | 0 | 支付金额 |
9 | payment_details | text | 65535 | 0 | Y | N | 支付详情 | |
10 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
11 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | regular_users_id | int | 10 | 0 | N | Y | 普通用户ID | |
2 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
3 | user_phone_number | varchar | 16 | 0 | Y | N | 用户电话 | |
4 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
5 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
6 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | repayment_information_id | int | 10 | 0 | N | Y | 还款信息ID | |
2 | user_account | int | 10 | 0 | Y | N | 0 | 用户账号 |
3 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
4 | opening_bank | varchar | 64 | 0 | Y | N | 开户银行 | |
5 | card_application_date | date | 10 | 0 | Y | N | 办卡日期 | |
6 | bank_card_number | varchar | 64 | 0 | Y | N | 银行卡号 | |
7 | repayment_date | date | 10 | 0 | Y | N | 还款日期 | |
8 | repayment_amount | int | 10 | 0 | Y | N | 0 | 还款金额 |
9 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表transaction_information (交易信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | transaction_information_id | int | 10 | 0 | N | Y | 交易信息ID | |
2 | user_account | int | 10 | 0 | Y | N | 0 | 用户账号 |
3 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
4 | opening_bank | varchar | 64 | 0 | Y | N | 开户银行 | |
5 | card_application_date | date | 10 | 0 | Y | N | 办卡日期 | |
6 | bank_card_number | varchar | 64 | 0 | Y | N | 银行卡号 | |
7 | transaction_date | date | 10 | 0 | Y | N | 交易日期 | |
8 | transaction_amount | int | 10 | 0 | Y | N | 0 | 交易金额 |
9 | transaction_details | text | 65535 | 0 | Y | N | 交易详情 | |
10 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
11 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表upload (文件上传)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | upload_id | int | 10 | 0 | N | Y | 上传ID | |
2 | name | varchar | 64 | 0 | Y | N | 文件名 | |
3 | path | varchar | 255 | 0 | Y | N | 访问路径 | |
4 | file | varchar | 255 | 0 | Y | N | 文件路径 | |
5 | display | varchar | 255 | 0 | Y | N | 显示顺序 | |
6 | father_id | int | 10 | 0 | Y | N | 0 | 父级ID |
7 | dir | varchar | 255 | 0 | Y | N | 文件夹 | |
8 | type | varchar | 32 | 0 | Y | N | 文件类型 |
表user (用户账户:用于保存用户登录信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | user_id | mediumint | 8 | 0 | N | Y | 用户ID:[0,8388607]用户获取其他与用户相关的数据 | |
2 | state | smallint | 5 | 0 | N | N | 1 | 账户状态:[0,10](1可用|2异常|3已冻结|4已注销) |
3 | user_group | varchar | 32 | 0 | Y | N | 所在用户组:[0,32767]决定用户身份和权限 | |
4 | login_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 上次登录时间: |
5 | phone | varchar | 11 | 0 | Y | N | 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时 | |
6 | phone_state | smallint | 5 | 0 | N | N | 0 | 手机认证:[0,1](0未认证|1审核中|2已认证) |
7 | username | varchar | 16 | 0 | N | N | 用户名:[0,16]用户登录时所用的账户名称 | |
8 | nickname | varchar | 16 | 0 | Y | N | 昵称:[0,16] | |
9 | password | varchar | 64 | 0 | N | N | 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成 | |
10 | | varchar | 64 | 0 | Y | N | 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时 | |
11 | email_state | smallint | 5 | 0 | N | N | 0 | 邮箱认证:[0,1](0未认证|1审核中|2已认证) |
12 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
13 | open_id | varchar | 255 | 0 | Y | N | 针对获取用户信息字段 | |
14 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
15 | vip_level | varchar | 255 | 0 | Y | N | 会员等级 | |
16 | vip_discount | double | 11 | 2 | Y | N | 0.00 | 会员折扣 |
表user_group (用户组:用于用户前端身份和鉴权)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | group_id | mediumint | 8 | 0 | N | Y | 用户组ID:[0,8388607] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000] |
3 | name | varchar | 16 | 0 | N | N | 名称:[0,16] | |
4 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该用户组的特点或权限范围 | |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | register | smallint | 5 | 0 | Y | N | 0 | 注册位置: |
9 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
整个智能银行客户服务系统的需求分析主要对系统总体架构以及功能模块的设计,通过建立E-R模型和数据库逻辑系统设计完成了数据库系统设计。
4 系统关键模块详细设计与实现
智能银行客户服务系统的详细设计与实现主要是根据前面的智能银行客户服务系统的需求分析和智能银行客户服务系统的总体设计来设计页面并实现业务逻辑。主要从智能银行客户服务系统界面实现、业务逻辑实现这两部分进行介绍。
4.1普通用户功能模块
4.1.1 用户注册界面
智能银行客户服务系统的游客和注册用户时可以进行注册登录,当用户右上角“注册”按钮的时候,当填写上自己的账号+密码+确认密码+昵称+邮箱等后再点击“注册”按钮后将会先验证输入的有没有空数据,再次验证密码和确认密码是否是一样的,最后验证输入的账户名和数据库表中已经注册的账户名是否重复,只有都验证没问题后即可用户注册成功。用户注册界面展示如下图所示。

图4-1注册界面图
注册关键代码如下:
* 注册
* @param user
* @return
*/
@PostMapping("register")
public Map<String, Object> signUp(@RequestBody User user) {
// 查询用户
Map<String, String> query = new HashMap<>();
Map<String,Object> map = JSON.parseObject(JSON.toJSONString(user));
query.put("username",user.getUsername());
List list = service.selectBaseList(service.select(query, new HashMap<>()));
if (list.size()>0){
return error(30000, "用户已存在");
}
map.put("password",service.encryption(String.valueOf(map.get("password"))));
service.insert(map);
return success(1);
}
智能银行客户服务系统中的前台上注册后的用户是可以通过自己的账户名和密码进行登录的,当用户输入完整的自己的账户名和密码信息并点击“登录”按钮后,将会首先验证输入的有没有空数据,再次验证输入的账户名+密码和数据库中当前保存的用户信息是否一致,只有在一致后将会登录成功并自动跳转到智能银行客户服务系统的首页中;否则将会提示相应错误信息,用户登录界面如下图所示。

图4-2用户登录界面图
登录的逻辑代码如下所示。
/**
* 登录
* @param data
* @param httpServletRequest
* @return
*/
@PostMapping("login")
public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {
log.info("[执行登录接口]");
String username = data.get("username");
String email = data.get("email");
String phone = data.get("phone");
String password = data.get("password");
List resultList = null;
Map<String, String> map = new HashMap<>();
if(username != null && "".equals(username) == false){
map.put("username", username);
resultList = service.select(map, new HashMap<>()).getResultList();
}
else if(email != null && "".equals(email) == false){
map.put("email", email);
resultList = service.select(map, new HashMap<>()).getResultList();
}
else if(phone != null && "".equals(phone) == false){
map.put("phone", phone);
resultList = service.select(map, new HashMap<>()).getResultList();
}else{
return error(30000, "账号或密码不能为空");
}
if (resultList == null || password == null) {
return error(30000, "账号或密码不能为空");
}
//判断是否有这个用户
if (resultList.size()<=0){
return error(30000,"用户不存在");
}
User byUsername = (User) resultList.get(0);
Map<String, String> groupMap = new HashMap<>();
groupMap.put("name",byUsername.getUserGroup());
List groupList = userGroupService.select(groupMap, new HashMap<>()).getResultList();
if (groupList.size()<1){
return error(30000,"用户组不存在");
}
UserGroup userGroup = (UserGroup) groupList.get(0);
//查询用户审核状态
if (!StringUtils.isEmpty(userGroup.getSourceTable())){
String sql = "select examine_state from "+ userGroup.getSourceTable() +" WHERE user_id = " + byUsername.getUserId();
String res = String.valueOf(service.runCountSql(sql).getSingleResult());
if (res==null){
return error(30000,"用户不存在");
}
if (!res.equals("已通过")){
return error(30000,"该用户审核未通过");
}
}
//查询用户状态
if (byUsername.getState()!=1){
return error(30000,"用户非可用状态,不能登录");
}
String md5password = service.encryption(password);
if (byUsername.getPassword().equals(md5password)) {
// 存储Token到数据库
AccessToken accessToken = new AccessToken();
accessToken.setToken(UUID.randomUUID().toString().replaceAll("-", ""));
accessToken.setUser_id(byUsername.getUserId());
tokenService.save(accessToken);
// 返回用户信息
JSONObject user = JSONObject.parseObject(JSONObject.toJSONString(byUsername));
user.put("token", accessToken.getToken());
JSONObject ret = new JSONObject();
ret.put("obj",user);
return success(ret);
} else {
return error(30000, "账号或密码不正确");
}
}
4.1.3 个人信息界面
个人信息,在个人信息页面中通过填写用户名、密码、姓名、性别、手机、邮箱、身份等信息,还可以根据需要对个人信息进行修改、删除如下图所示。

图4-3个人信息界面图
存款信息管理,在存款信息管理页面中可以查看用户账号、用户姓名、开户银行、办卡日期、银行卡号、存款日期、存款金额等信息内容,并且根据需要对已有存款信息管理进行修改或删除等其他详细操作,存款信息管理界面如下图所示。

图4-4存款信息管理界面图
存款信息关键代码如下:
@PostMapping("/set")
@Transactional
public Map<String, Object> set(HttpServletRequest request) throws IOException {
service.update(service.readQuery(request), service.readConfig(request), service.readBody(request.getReader()));
return success(1);
}
支付信息管理,在支付信息管理页面中可以查看用户账号、用户姓名、开户银行、办卡日期、银行卡号、支付日期、支付金款等信息内容,用户可以管理自己的支付信息,包括添加新支付方式、设置默认支付方式等。支付信息管理界面如下图所示。

图4-5支付信息管理界面图
4.2管理员功能模块
管理员登录,通过填写注册时输入的用户名、密码、角色进行登录,如下图所示。

图4-6登录界面图
管理员登录进入智能银行客户服务系统可以查看首页、系统用户、银行卡信息管理、存款信息管理、支付信息管理、信用卡信息管理、交易信息管理、还款信息管理、挂失信息管理、挂失处理管理、银行公告管理、理财推荐管理等信息。首页界面如下图所示。
图4-7功能首页界面图
管理员点击“系统用户”这一菜单会显示管理员、普通用户这两个子菜单,管理员可以对这两个角色的信息进行增删改查操作。界面如下图所示。

图4-8系统用户管理界面图
银行卡信息管理,管理员点击“银行卡信息管理”这一菜单会显示银行卡信息列表、银行卡信息添加这两个子菜单,通过输入开户银行、办卡日期、银行卡号进行查询、重置和删除等操作。还可以添加新的银行卡信息。还可以管理用户的银行卡信息,包括查看、编辑、解绑用户银行卡等操作。银行卡信息管理界面如下图所示。

图4-9银行卡信息列表界面图
挂失信息管理,在挂失信息管理页面中可以查看用户账号、用户姓名、开户银行、办卡日期、银行卡号、挂失时间、挂失详情等内容,并且根据需要对挂失业务信息详情,进行修改或删除等详细操作,如下图所示。

图4-10挂失信息管理界面图
挂失信息关键代码如下:
@RequestMapping(value = "/del")
@Transactional
public Map<String, Object> del(HttpServletRequest request) {
service.delete(service.readQuery(request), service.readConfig(request));
return success(1);
}
public void delete(Map<String,String> query,Map<String,String> config){
QueryWrapper wrapper = new QueryWrapper<E>();
toWhereWrapper(query, "0".equals(config.get(FindConfig.GROUP_BY)),wrapper);
baseMapper.delete(wrapper);
log.info("[{}] - 删除操作:{}",wrapper.getSqlSelect());
}
管理员点击“银行公告”这一菜单会显示银行公告列表和银行公告添加这两个子菜单,管理员可以对前台展示的银行公告进行设置和添加,界面如下图所示。

图4-11银行公告列表界面图

图4-12银行公告添加界面图
银行公告添加关键代码如下:
@PostMapping("/add")
@Transactional
public Map<String, Object> add(HttpServletRequest request) throws IOException {
service.insert(service.readBody(request.getReader()));
return success(1);
}
public Map<String, Object> addMap(Map<String,Object> map){
service.insert(map);
return success(1);
5系统测试
一个系统设计好后,就会进入测试阶段,测试的目标是检验设计好的网站是否可以正常无误的运行,尽可能的发现网站的问题,已使后期网站投入使用后网站尽少出错。
6.1 测试定义
系统测试主要是判断系统是否可以正常运行,功能模块是否可以实现操作。程序代码中是否有错误出现。测试程序是开发过程中的一个主要问题。就算系统完成的再好,再进行程序测试时也会发现一个从来没有被发现的错误信息。
测试不仅是系统开发的开始,而且应该贯穿整个系统的整个生命周期。评估系统质量的方法不局限于系统编码和过程,应该与软件设计工作和历史需求分析密切相关。系统错误,不一定是代码错误,可能是阶段的设计摘要和设计细节存在问题,问题也可能出现在需求分析阶段。从实际情况来看,最初的问题很可能是一个小错误,根据按钮的原理,按钮后的按钮位错将是所有位错。该系统的原因也同样适用,随着后续的开发工作,误差将越来越严重。因此就应该对系统进行测试,在一开始就发现系统中存在的问题,就能保证以后系统能够正常稳定的运行。在测试系统中,开发人员应该站在用户的角度来处理测试工作,而现在主要的测试方法是黑盒测试。测试的目的可以概括为以下几点:首先,用户界面和用户需求是一致的,设置界面和设计风格统一;第二,创新设计接口规范设计标准,具有独特的审美特征;最后,人类传统的接口以满足审美需求,不能盲目地追求一种独特的,合理的规划布局,符合审美标准。
6.2 测试目的
测试的目的在于要对系统的稳定和可操作性能进行对照检查。对于软件的开发利用最终的目的在最后的测试和试用,这是一个不可缺少的重要环节。对于软件开发者而言,在对每一个单独的功能进行编排时候,都要有单独的测试,并通过测试阶段才可以研发多个功能性软件,这样既缩短了研发时间,也可以在的单个的早期测试中发现问题,以免融合后的软件,在查找问题时就很难快速解决或者急速定位问题。
智能银行客户服务系统开发设计完成后,需要对其进行系统测试,测试的主要目的就是发现并找出系统中存在的问题,并及时的进行解决,确保系统可以正常稳定的运行下去,在进行系统测试的时候,在一定要非常的认真、仔细,切记不能粗心,不能放过一个漏洞,测试时候一定不要着急,要按照之前指定好的测试步骤一步一步进行,并且将测试的结果进行详细的记录,我们在进行测试的时候做好选择自动化的测试,这样既可以节省时间而且也能确保测试的准确性,如果采用人工测试的方法就不会这么的方便,由于人工测试有很多不确定的因素,在测试过程中很可能会出现一些问题,用机器测试就不会出现任何的问题,而且机器不会疲惫会一直二等工作下去。在测试的时候一定要非常专注,时刻关注着测试的结果,一但发现异常及时进行修改,最后,测试完之后的文档应该保存下来,方便以后测试时用到。系统测试的方法有很多,对于本智能银行客户服务系统的测试,我们使用了测试用得最多的黑盒测试方法来对该系统进行测试。
6.3测试方案
对测试计划的把握是测试方案的重中之重。所有的技术难点应该都被包含在这个测试计划之中。而且我们要保证能与目标形成一致性,以至于能够测试出一些主要存在的错误和一些错误的漏洞。可以完美解决这些问题就只有白盒测试或者黑盒测试。
构造测试是白盒测试的另一个名字,了解与分析程序的结构以及性能功用的,从而我们可以得到最终想要的结果并且观察出是不是每一条程序都能得到。
性能测试是黑盒测试别称,程序本身的运作通过程序的进程来观察,主要是看一下程序是不是能够像我们预期的目标那样发展,看一看我们的程序最终能不能完整的得到我们最后想要的功能和储存想得到的数据,到最后看一下我们的这个程序完整性能不能达到要求。
单元测试就是模块测试,顾名思义就是测试每个模块所承担的功能是否能够实现,这个测试就是为了找出代码在实际的设计运转中某一些小的程序所出现的偏差,很好地改正这些错误,就说明我们模块测试进行很成功过。
集成测试就是对系统的测试以及对他子系统的一些性能测试,他检查的事系统的包装程序信息。找出其中的问题。他的优势主要有以下这几点:
软件耗费较少。
可以提前发现端口的错误。
更好的地位系统中错误的位置。
从底部往上面进行的方案针对于偏下层的结构,而中间的结构就采用折中的方法。
终于到了结尾性的工作了。就是为了给用户看一下我们的系统功能是否达到了预期的效果。我采用了性能测试也就是黑盒测试对系统进行测试。
其结果是分别是:
有一定的差异在用户的需求。
再者就是结果与之差不了多少。
到了最后了,我们发现的问题都是与用户的需求存在一定的关联。
测试点:登录
测试的目标:输入账号密码以及验证码后系统会自动进行验证是否正确。
所用的环境:Windows10和IE浏览器。
输入信息:用户名、密码。
步骤:
(1)首先我们打来浏览器,进入该系统的登录界面。
(2)在进入页面登录部分以后可以进行对用户名、密码进行测试,具体测试输入情况如下表5.1所示。
表5.1 登录测试
情况 | 用户名输入 | 密码输入 | 期望结果 |
(1) | 15546219225 | 1244566 | 提示“用户名或者密码错误,或账号未经审核” |
(2) | aaaaa | 123456 | 提示“用户名或密码错误,或者账号未经审核” |
(3) | 15546219225 | hangguowei | 登陆成功 |
6.4系统分析
本智能银行客户服务系统设计要求基本都可以达到,此系统具有完整的软件功能,良好的用户界面,能够正确的处理错误信息,而且能够准确的提出错误的种类。但是系统测试时也出现了一些系统的不足和缺陷,所以在今后的日子里我会对其视觉上的不足作出修改,其次系统的代码和数据库出现了非常多的冗余现象,都是因为对编程技术的应用不够熟练,在日后我会加强自己的自身学习和能力,减少这样的冗余现象。
经过对上述的测试结果分析,本智能银行客户服务系统无论是在技术方面,还是操作方面,还是经济方面都是完全可以实行的,并且经过测试,该系统操作简单,所有的功能都可以实现,因此该系统可以满足用户的使用需求,值得被推广。
总体说来,软件通过测试。
结论
本文研究了智能银行客户服务系统的设计与实现,在文章开端首先对个研究背景、研究现状和研究内容作了简单的介绍,然后通过系统分析,引申出本系统研究的主要内容。
通过对Java技术和MYSQL数据库的简介,从硬件和软件两反面说明了智能银行客户服务系统的设计与实现的可行性,本文结论及研究成果如下:实现了Java与MYSQL相结合构建的智能银行客户服务系统,我感触到学习一门新技术,最重要的是实践,只有多动手才能尽快掌握它,一个系统的开发,经验是最重要的,经验不足,就难免会有许多考虑不周之处。要想吸引更多的用户,系统的界面必须要美观、有特色、友好,功能要健全。
由于在此之前对于Java知识并不了解,所以从一开始就碰到许多困难,例如一开始的页面显示不规范、数据库连接有问题已经无法实现参数的传递等等,不过通过我不断的查阅相关的资料,以及向老师同学请教,最后出现的所有的问题都得到了解决,通过这次的系统开发,我学到了很多的知识,也明白了自己在哪些方面有不足的地方,尤其是学会如何从大量的信息中筛选出所需有用的信息,同时我更加深刻的体会到了,虽然书本上的大部分知识都是有价值,正确的,但实际上每个人编程的思路和对数据处理的方法、思想都是不同的,这就要求我们一定要通过实践才能找到解决问题的方案。在此次毕业设计活动中,我不断的提高了自己,也得到了宝贵的经验,我相信这些对我以后的发展都会有很大帮助。
通过这次智能银行客户服务系统的开发,让我学到了更多的知识,同时通过这次系统的设计也让我明白了自己在哪方面有不足,以后加以学习争取可以开发住更多有用的适用的系统软件,本次系统的设计提高了我的编程水平,为了我今后系统的开发打下了结实的基础。
参考文献
[1]Wardhani K M ,Sulistiyorini A D .Assessment of the Quality of Raw Water for Salt Production in Pangarengan, Sampang, East Java[J].IOP Conference Series: Earth and Environmental Science,2024,1298(1):
[2]Kartini A G ,Gumilar I ,Abidin Z H , et al.3D model of Pawon Cave: The first prehistoric dwelling discovery in West Java, Indonesia[J].Digital Applications in Archaeology and Cultural Heritage,2024,32e00311-.
[3]粟梁.基于Java的汽车租赁管理系统[J].电脑编程技巧与维护,2024,(01):43-45+52.DOI:10.16184/j.cnki.comprg.2024.01.035.
[4]王然,陈凤英,安涛.基于区块链技术的国家学分银行系统研究与设计[J].成人教育,2024,44(01):54-60.
[5]谭光兴,甘景,戚秋晨.基于Java语言的远程数据采集系统设计与实现[J].科技与创新,2024,(01):19-22.DOI:10.15913/j.cnki.kjycx.2024.01.005.
[6]Cuong Q B ,Ranindya P ,Ly D V , et al.APR4Vul: an empirical study of automatic program repair techniques on real-world Java vulnerabilities[J].Empirical Software Engineering,2023,29(1):
[7]Migallón V ,Penadés J .A Java Application for Teaching Graphs in Undergraduate Courses[J].Applied Sciences,2023,13(23):
[8]A D W ,R S ,V M .Landslide Prone Areas Analysis in Bandungan District, Semarang Regency, Central Java, Indonesia[J].IOP Conference Series: Earth and Environmental Science,2023,1268(1):
[9]游晶,邱淑丽,李敬文.基于SpringBoot的校园智慧报修系统的设计与实现[J].电脑知识与技术,2023,19(32):50-52+65.DOI:10.14004/j.cnki.ckt.2023.1718.
[10]张国芳.Java编程语言在计算机软件开发中的应用方向分析[J].信息记录材料,2023,24(11):138-141.DOI:10.16009/j.cnki.cn13-1295/tq.2023.11.042.
[11]郭子傲,杨凯江.基于Java的在线音乐系统的设计与实现[J].工业控制计算机,2023,36(10):66-67+70.
[12]丁玉青,孙逸飞,朱敏.基于JAVA的共享蓝牙耳机小程序设计[J].科技与创新,2023,(20):152-154.DOI:10.15913/j.cnki.kjycx.2023.20.047.
[13]刘佳乐,赵雨,厚露露等.基于Java Web的学生信息管理系统[J].现代信息科技,2023,7(19):21-24.DOI:10.19850/j.cnki.2096-4706.2023.19.005.
[14]时俊雅,黄苏雨.基于Java的大学生在线学习系统设计与实现[J].无线互联科技,2023,20(19):73-75.
[15]范宏,庞琮远.基于DebtRank算法的银行系统性风险仿真研究[J].计算机仿真,2023,40(09):256-261.
[16]杨志俊,侯江华.基于SpringBoot的智慧养老系统设计[J].无线互联科技,2023,20(17):87-89.
[17]陈冬君,孔海军,吴荷等.基于SpringBoot+Vue的智能随车营销系统[J].电脑与电信,2023,(09):55-59.DOI:10.15966/j.cnki.dnydx.2023.09.017.
[18]薛尚松.银行商品房预售资金智慧监管系统的设计与实现[D].山东大学,2023.DOI:10.27272/d.cnki.gshdu.2023.007699.
[19]金鹏涛.基于区块链的铁道专业学分银行系统设计[J].信息与电脑(理论版),2023,35(14):175-177.
[20]银莉,杜啸楠.基于SpringBoot和Vue的校园积分系统的设计与实现[J].集成电路应用,2023,40(07):414-415.DOI:10.19339/j.issn.1674-2583.2023.07.187.
致 谢
本次毕业设计圆满的结束了,通过这次毕业设计我学到了很多的知识,也提高了我软件开发的能力,在系统开发设计的过程中,出现了很多的问题,但是通过老师和同学们的帮助,最后所有的问题都得到了解决,因此我要感谢在此过程中对我帮助的老师和同学们,感谢指导老师帮助我选课题,给我做详细的讲解,给我提供设计所需要的各种设备,也经常询问我进度与成果,再有难点的时候给我解决思路,帮助我顺利完成。没有他的指导,也不会有我今天所展现出的成果。
首先我要感谢我的指导老师,指导老师在教学任务繁忙的情况下,抽出时间帮助我纠正我在设计当中出现的问题,并耐性地为我的论文作校正,是他的定期检查和指导使得我们的毕业设计高质量完成。他在我整个课题开发和设计的过程中,为程序的设计、框架的设计、代码的撰写方面以及论文框架的设计提供了很多宝贵的意见,并且为我推荐了许多有用的资料和文献,他的指导和建议使我受益匪浅,有了指导老师的辅导和指点,我论文才能够顺利完成。老师的认真负责的工作态度和治学严谨之道使我们这些即将踏入社会的毕业生受益匪浅。
然后要感谢我的同学们,感谢大家对我这次毕业设计的帮助,也感谢大家在大学生活中对我的陪伴,使得我的大学生活过的很快乐。
另外,我还要感谢父母,感谢一直以来对我的支持,让我能够顺利的完成我的学业,没有你们也就没有我的今天,感谢你们无私的付出,未来我一定会报答你们的。
最后,感谢在座的所有参加我论文答辩的老师们,感谢大家的聆听,你们辛苦了。
点赞+收藏+关注 →私信免费领取本源代码、数据