springboot个人记账系统--附源码70415

目录

摘 要

Abstract

一、绪论

1.1研究背景与意义

1.2国内外研究现状

1.3研究内容

1.4论文结构章节安排

二、开发技术

2.1 Java介绍

2.2 MySQL数据库

2.3 Springboot框架介绍

2.4 Vue.js

三、系统分析

3.1系统可行性分析

3.1.1经济可行性

3.1.2技术可行性

3.1.3操作可行性

3.2系统功能需求分析

3.3系统性能分析

3.4系统业务流程分析

四、系统设计

4.1总体结构设计

4.2系统功能设计

4.3数据库结构设计

4.3.1E-R图设计

4.3.2数据库表设计

五、系统实现

5.1用户端功能介绍

5.1.1登录界面

5.1.2账户信息添加界面

5.1.3收入信息添加界面

5.1.4支出信息添加界面

5.1.5提醒信息添加界面

5.1.6预算信息添加界面

5.2管理员端功能介绍

5.2.1普通用户管理界面

5.2.2账户信息管理界面

5.2.3支出信息管理界面

5.2.4提醒信息管理界面

5.2.5账户统计界面

六 系统模块测试

6.1测试目的

6.2 测试方法

6.3测试用例

七、总结

参考文献

致谢

摘 要

传统记账方式往往依赖手工进行录入,存在问题较多,如纸质记录易丢失、数据安全性低、难以进行复杂统计等,这不仅效率低下而且容易出错。随着移动互联网的发展和个人财务管理意识的增强,对高效、便捷且安全的记账工具的需求日益增长。因此需要开发一款Springboot个人记账系统。

该系统采用Java语言进行后端开发,并以MySQL作为数据库支撑,系统前端界面简洁直观,后端通过Springboot框架实现业务逻辑分层。在开发系统前先对用户的需求进行深入分析,通过详细的需求分析,明确了系统需要支持的主要功能模块包括账户信息管理、收入信息管理、支出信息管理、提醒条件管理、提醒信息管理、预算信息管理等。个人记账系统的开发目的主要是通过提供一个智能化、个性化的财务管理解决方案,系统不仅可以提升用户体验,也可以促进良好的个人财务习惯养成,对于提升个人乃至家庭的经济健康水平具有重要意义。

关键字:个人记账系统;Springboot框架;账户信息管理;提醒信息管理

Abstract

Traditional accounting methods often rely on manual input, which has many problems such as easy loss of paper records, low data security, and difficulty in conducting complex statistics. This not only results in low efficiency but also makes it prone to errors. With the development of mobile Internet and the enhancement of personal financial management awareness, the demand for efficient, convenient and safe accounting tools is growing. Therefore, it is necessary to develop a Springboot personal accounting system.

The system adopts Java language for backend development and MySQL as the database support. The front-end interface of the system is simple and intuitive, and the backend implements business logic layering through the Springboot framework. Before developing the system, a thorough analysis of user needs was conducted. Through detailed requirement analysis, the main functional modules that the system needs to support were identified, including account information management, income information management, expenditure information management, reminder condition management, reminder information management, budget information management, etc. The main purpose of developing a personal accounting system is to provide an intelligent and personalized financial management solution. The system can not only enhance user experience, but also promote the development of good personal financial habits, which is of great significance for improving the economic health level of individuals and even families.

Keywords:Personal accounting system; Springboot framework; Account information management; Reminder information management

一、绪论

1.1研究背景与意义

随着经济的快速发展和个人财富的逐渐积累,人们对于自身财务状况的关注度日益提升。传统的记账方式,例如纸质笔记本或简单的电子表格,虽然曾经是管理个人财务的主要手段,但它们存在诸多局限性。手工记录不仅耗时费力,而且容易出现人为错误。

在数字技术飞速发展的今天,移动互联网、智能手机和平板电脑的普及为个人财务管理带来了新的机遇。越来越多的人希望通过一款易于使用、功能强大的应用来简化记账流程,实现更加科学合理的财务规划。因此,开发一个高效的个人记账系统成为必然趋势。

在日常生活中,人们需要处理各种各样的财务事务,从简单的收支记录到复杂的预算规划。记账系统能够提供直观的用户界面和便捷的操作流程,使用户可以轻松地记录每一笔交易,帮助用户快速了解自己的消费模式和储蓄情况。个人记账系统它不仅限于记录收入和支出,这些功能可以帮助用户更好地理解自身的财务状况,识别潜在的问题,并及时调整消费行为,鼓励用户制定并坚持合理的财务计划。

1.2国内外研究现状

在国内,个人记账系统市场发展迅速,众多应用为用户提供了便捷的财务管理工具。随手记和挖宝(贝多多)是两个备受欢迎的个人记账系统。其中挖宝(贝多多)则以其专业的理财功能而闻名,该应用不仅可以记录日常生活开支,还能跟踪用户的投资组合,包括股票、基金等金融产品,为用户提供综合性的财富管理方案。但是由于应用界面相对复杂,对于新手用户来说可能需要一定时间适应。随手记是一款功能全面且广受好评的个人记账应用。其最大的优点在于操作简便、界面友好,适合各类用户群体使用,随手记支持多平台同步,无论是通过手机还是电脑,用户都可以方便地管理自己的财务数据。然而,随手记在高级财务管理服务方面略显不足,例如对于税务规划或复杂资产配置的支持不够深入。

国外的个人记账系统研究与应用在不同国家呈现出多样化的发展态势。在日本,个人财务管理软件如Money Forward和Zaim等备受欢迎。这些应用程序不仅提供基本的收入支出记录功能,还深度集成了银行账户、信用卡和其他金融服务,实现了自动化的财务数据同步更新,用户可以通过这些平台实时监控自己的财务状况,并获得个性化的理财建议。欧美地区的个人记账市场则更加成熟且多元化,代表性的有Mint、YNAB(You Need A Budget)和Quicken等。Mint以其广泛的金融机构兼容性和详尽的预算管理工具著称,能够帮助用户追踪消费习惯并设定合理的财务目标。YNAB强调零基预算理念,鼓励用户对每一笔资金进行明确规划,从而更好地控制支出。Quicken则是一个综合性的个人财务管理解决方案,涵盖了从日常记账到复杂的资产配置等多个层面的服务。尽管以上的相关记账系统在功能上非常强大,但它们也存在一些不足之处。例如,部分高端功能可能需要付费解锁,增加了使用成本;而且由于涉及大量敏感个人信息,数据安全和隐私保护成为用户关注的重点问题。

1.3研究内容

  1. 深入了解用户对与记账管理方面的需求,分析现有系统的不足之处。通过访谈、问卷调查等方式收集潜在用户的需求,明确系统的功能要求和技术指标。
  2. 详细梳理个人记账管理流程,包括个人账户信息管理、收支管理、预算信息管理等环节。确定系统的整体架构,包括前端、后端、数据库等各部分的职责和交互方式。
  3. 设计合理的数据库结构,确保数据的一致性和完整性,优化查询性能。
  4. 对各个模块进行单元测试,确保每个功能模块的正确性。
  5. 定期对系统进行维护和更新,修复发现的问题,优化系统性能。

通过上述研究内容的系统化设计与实现,本论文旨在构建一个便捷、安全的个人记账系统。

1.4论文结构章节安排

本文共有七章,如下所示。

第一章详细阐释了个人记账系统的研究背景与意义,国内外研究现状以及研究内容,还有论文的结构与章节安排;

第二章对系统的开发技术进行简述,包括Java编程语言、数据库、Springboot框架等;

第三章对系统的可行性分析、功能需求分析、性能分析以及系统业务流程分析进行介绍,画出用例图以及系统业务流程图;

第四章则将对系统设计进行探讨,包括系统功能模块、数据库结构等,画出ER图以及展示数据库表;

第五章系统实现介绍,包括前台端用户的功能模块截图以及实现,以及管理员后台端的功能模块截图以及实现。

第六章系统模块测试。

总结。

二、开发技术

2.1 Java介绍

Java主要采用CORBA技术和安全模型,可以在互联网应用的数据保护。它还提供了对EJB(Enterprise JavaBeans)的全面支持,java servlet API,JSP(java server pages),和XML技术。JAVA语言是一种面向对象的语言,它通过提供最基本的方法来完成指定的任务,开发者只需要知道一些概念就能够编写出一些应用程序。Java程序相对较小,其代码能够在小机器上运行。Java是一种计算机编程语言,具有封装、继承和多态性三个主要特性,广泛应用于企业Web应用程序开发和移动应用程序开发。

Java语言和一般编译器以及直译的区别在于,Java首先将源代码转换为字节码,然后将其转换为JVM的可执行文件,JVM可以在各种不同的JVM上运行。因此,实现了它的跨平台特性。虽然这使得Java在早期非常缓慢,但是随着Java的开发,它已经得到了改进。

2.2 MySQL数据库

在个人记账系统中,MySQL数据库技术起到了至关重要的作用,通过合理的设计和优化,确保了系统的高效、稳定和安全运行。首先,数据库设计确保数据的一致性和完整性;其次,数据库优化方面,通过创建主键索引、唯一索引和复合索引,提高查询效率,避免全表扫描,在事务管理方面,使用Spring的事务管理注解,确保数据的一致性和完整性,特别是在涉及多个表的复杂操作中。通过这些技术手段,MySQL数据库在个人记账系统中发挥了重要作用,为系统的高效、稳定和安全运行提供了坚实的基础。

2.3 Springboot框架介绍

Spring Boot采用约定比配置更重要的思想,并通过默认配置来降低开发者所需完成的配置任务。这能够更快开始工程,降低配置出错的概率。Spring Boot内置了常用的Web容器(如Tomcat、Jetty等),无需外部部署,可通过内嵌容器轻松运行应用。这样就可以简化工程的调配与维修。Spring Boot借助自动化配置机制实现了基于项目依赖与环境的自动化应用配置。这样可以减少配置工作量和开发效率。Spring Boot在安全性,事务管理和数据访问方面提供很多开箱即用功能。这样开发者就可以更加注重实现业务逻辑,无需过多地注重基础设施建设。Spring Boot成功地整合了Spring框架中的多个功能模块,例如Spring MVC、Spring Data、Spring Security等,这使得开发人员能够轻松地利用这些功能来创建全方位的企业级应用程序。

2.4 Vue.js 

Vue.js是一套构建用户界面的渐进式框架。与其他重量级框架不同的是,Vue采用自底向上增量开发的设计。Vue 的核心库只关注视图层,并且非常容易学习,非常容易与其它库或已有项目整合。另一方面,Vue 完全有能力驱动采用单文件组件和Vue生态系统支持的库开发的复杂单页应用。

系统分析

3.1系统可行性分析

本系统将在经济、技术、操作这三个角度上进行可行性分析。

3.1.1经济可行性

在经济方面,个人记账系统具有较高的可行性。首先,Springboot是一种开源的框架,使用成本相对较低,不需要支付昂贵的授权费用。其次,系统的开发和维护成本也相对较低,因为Springboot具有广泛的社区支持和丰富的开发资源,可以有效降低人力成本。

3.1.2技术可行性

从技术角度来看,个人记账系统同样具有可行性。Java作为主要开发平台,具有广泛的用户基础和便捷的使用功能,可以满足信息化管理的需求。现有的Springboot开发框架提供了丰富的功能和组件,可以大大简化系统的开发过程。结合MySQL数据库的高性能和稳定性,系统能够高效处理大量数据,支持高并发访问,综合来看,个人记账系统能够满足高效、稳定、便捷和用户友好的需求。

3.1.3操作可行性

在操作方面,个人记账系统也具有较高的可行性。首先,系统的用户界面设计应简洁明了,符合用户的使用习惯,降低操作难度。其次,系统应提供详细的使用说明和帮助文档,方便用户快速上手。此外,系统还应具备良好的稳定性和安全性,确保用户可以放心使用。综上所述,从经济、技术、操作这三个角度来看,个人记账系统的设计与实现具有较高的可行性。

3.2系统功能需求分析

个人记账系统分为两大部分:普通用户和管理员用户。

1、普通用户功能:

注册登录:新用户使用系统前需要进行身份的注册,成功后方可登录系统。

后台首页:提供快速访问常用功能的入口。

账户信息管理:允许用户创建新的账户信息,录入个人账户详情。

收入信息管理:方便用户在线记录个人的账户收入明细。

支出信息管理:方便用户在线记录个人账户的支出明细。

提醒条件管理:用户可以添加提醒内容。

提醒信息管理:查看个人的提醒内容记录。

预算信息管理:方便用户设置预算。

2、管理员功能:

后台首页:展示系统的关键业务数据和操作入口,提供管理员的业务概览。

系统用户管理:维护管理用户信息。

账户分类管理:添加账户分类详情。

货币分类管理:添加货币分类详情。

账户信息管理:查看用户的账户信息以及对账户数据进行维护管理。

收入信息管理:管理用户的收入数据。

支出信息管理:管理用户的支出数据。

提醒信息管理:查看和管理所有用户的提醒信息。

预算信息管理:管理和查询所有用户的预算信息。

根据以上功能需求分析,普通用户的用例图如下:

普通用户用例图如下所示。

图3-1普通用户用例图

管理员用例图如下所示。

图3-2 管理员用例图

账户信息添加用例描述如下表所示。

表3-1账户信息添加用例描述

用例名称

添加账户信息

参与者

普通用户

用例概述

本用例用于普通用户进行添加账户信息操作

前置条件

用户添加账户信息前必须登录系统

后置条件

系统中添加一个账户信息

基本事件流

参与者动作

系统响应

  1. 用户在系统后台界面选择“账户信息管理”。

4、用户输入账户信息,点击“提交”按钮。

2、系统打开账户信息管理信息界面。

3、系统打开账户信息列表,点击添加。

5、系统将账户信息添加到数据库中。

6、系统提示“操作成功”。

其他事件流

1、系统验证用户输入的具体账户资料为空,则提示“*请完善资料!”。

账户分类删除用例描述如下表所示。

表3-2账户分类删除用例描述

用例名称

账户分类删除

参与者

管理员

用例概述

本用例用于管理员进行删除账户分类操作

前置条件

管理员删除试题前必须登录系统

后置条件

系统中删除一个账户分类

基本事件流

参与者动作

系统响应

1、管理员在后台主界面选择“账户分类管理”。

4、管理员选择一个类型,点击“删除”按钮。

6、管理员点击“确定”按钮。

2、系统从数据库中获取账户分类列表

3、系统打开账户分类列表界面。

5、系统提示“你确定要删除吗?”。

7、系统将账户分类从数据库中删除。

8、系统提示“删除成功”。

9、系统跳转到账户分类管理界面。

其他事件流

用户编辑用例描述如下表所示。

表3-3用户编辑用例描述

用例名称

修改用户

参与者

管理员

用例概述

本用例用于管理员进行修改用户信息操作

前置条件

管理员已经登录系统

后置条件

系统中更新一条用户记录

基本事件流

参与者动作

系统响应

1、管理员在后台主界面选择“系统用户”。

4、管理员在用户列表中选择一个用户,点击“编辑”按钮。

6、管理员填写用户信息,点击“保存修改”按钮。

2、系统从数据库中获取用户信息。

3、系统打开用户列表界面。

5、系统打开修改用户信息界面。

7、系统将更改后的添加到数据库中。

8、系统提示“操作成功”。

9、系统跳转到用户管理界面。

其他事件流

3.3系统性能分析

1.在系统开发和设计中,我们应该根据汽车行业需求,确保系统具有良好的适用性,并且能够有效地发挥其价值。此外,一个优秀的框架也至关重要,因为它能够有效地提升系统的稳定性和效率。

2.为了让用户更加轻松、便捷地访问系统,我们应该设计一个简洁易用的登录界面,以提升用户的体验和使用效果。

3.通过精心设计和优化系统模块,我们可以大大提升系统的可用性,从而实现更好的功能和效率。

4.对于一个完善的系统而言,测试和评估至关重要,因此,我们在编写软件时应该尽可能地提高其运行效率,以确保其能够满足需求。

5.在设计这个系统时,我们需要充分考虑它的创新性和实用性,因此,我们将努力提升其功能,使其能够更好地满足用户的需求。

3.4系统业务流程分析

(1)注册流程

用户可以通过注册获得帐号密码。用户填写注册的资料后,系统收到资料后会很快验证。首先,该系统将对数据库进行检查,以确认是否存在该账户。如果没有账户,系统将继续对其他相关信息进行核实,并在确认后发出相应的提示,请用户修改帐户并使用流程图就能很好地显示登记这个流程,如下:

图3-3注册流程图

2)登录流程

不论普通用户、管理员均有登陆功能,两类用户登陆时步骤相同,均需首先访问其相应人物登陆网页,再开始录入账号、录入密码,当系统收到用户录入的登录信息后,会响应判断是否正确并与人物相对应,则自动跳过人物功能页面,登录这一步骤可以用流程图来展现,如下:

图3-4 登录流程图

(3)添加流程

本系统在处理数据时,其内部的操作逻辑也需要使用相应的工具进行展示。

在本系统的数据录入页面,对于操作者提供的每条数据都有相应的检验规则,比如数据信息不能有非法字符,或者本来应该是汉字的数据,不能用字母代替,还有对数据内容的长度等进行规范,这样的可以确保数据准确性的检验规则,在编码时,就提前编写好了。数据添加的流程见下图。如果数据已经保存进入数据库,则说明操作者提供的数据内容和格式都是符合要求的。

图3-5 添加信息流程图

(4)删除流程

很多时候,面对系统中的大量数据,难免会发现一些错误,因此需要及时纠正错误,本系统也提供数据后期的修改功能,其流程见下图。但是更新的数据也需要通过数据有效性检验。能够最终写入数据库则说明删除的数据是符合要求的。

图3-6 删除信息流程图

四、系统设计

4.1总体结构设计

在系统架构设计中,我们将确定系统的整体结构和组件之间的关系。这包括选择适当的架构风格,划分系统的层次结构,并定义各个模块的职责和交互方式。

图4-1系统架构图

表现层(Presentation Layer):负责与用户进行交互,将系统的功能和数据以易于理解和操作的方式展示给用户。通常包括用户界面、页面设计和用户输入验证等。

业务逻辑层(Business Logic Layer):处理系统的核心业务逻辑,包括对用户请求的处理、业务规则的执行以及数据的处理和转换。它独立于表现层和数据层,实现了业务逻辑的封装和复用。

数据层(Data Layer):负责数据的存储、访问和管理,包括数据库和持久化机制。数据层提供了对数据的增删改查操作,并与业务逻辑层进行交互,使系统能够有效地存储和检索数据。

这三个层次相互独立,通过明确的接口和协议进行通信,实现了系统的模块化和可扩展性。表现层负责将用户的请求传递给业务逻辑层,业务逻辑层处理请求并返回结果,最后数据层负责与数据库交互并提供数据支持。这种分层架构有助于实现系统的可维护性、灵活性和可测试性。

4.2系统功能设计

通过整体功能模块设计,我们将根据需求分析的结果,将系统的功能划分为不同的模块。每个模块负责实现特定的功能,并与其他模块进行协作。我们将详细定义每个模块的输入、输出、处理逻辑和相互依赖关系。系统总体功能模块图如图4-2所示.

图4-2系统功能结构图

4.3数据库结构设计

4.3.1E-R图设计

数据库的功能就是对系统中所有的数据进行存储和管理。所有的数据可以在数据库中产时间的进行存储,方便用户的使用。而且所有的数据库中的数据也应该具有一定的共享性,任何的系统可以对一些数据进行使用,同时还应该保持一定的独立性,每一个数据库中的数据都有很强的安全性,可以被很好的存放到数据库,没有进行身份的验证是不能对这些数据进行查看和使用的。数据库的设计需要明确每一个实体之间的联系,系统的E-R图如下图所示:

图4-3系统E-R图

下面根据个人记账系统的数据库总E-R关系图,以下得出的的是个人记账系统的很多实体图,如下列图所示。

图4-4普通用户E-R实体图

图4-5账户信息E-R实体图

图4-6 收入信息E-R实体图

4-7支出信息E-R实体图

4-8提醒条件E-R实体图

4.3.2数据库表设计

数据库表是设计和实现系统的一个重要基础。以下列出了该系统几个重要的数据库表。数据库表结构文档如下:

表account_classification (账户分类)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

account_classification_id

int

10

0

N

Y

账户分类ID

2

account_type

varchar

64

0

Y

N

账户类型

3

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表account_information (账户信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

account_information_id

int

10

0

N

Y

账户信息ID

2

bank_name

varchar

64

0

Y

N

银行名称

3

account_number

varchar

64

0

N

N

账户号码

4

account_type

varchar

64

0

Y

N

账户类型

5

currency_type

varchar

64

0

Y

N

货币类型

6

account_balance

double

9

2

Y

N

0.00

账户余额

7

account_user

int

10

0

Y

N

0

账户用户

8

user_name

varchar

64

0

Y

N

用户姓名

9

remarks_information

text

65535

0

Y

N

备注信息

10

income_information_limit_times

int

10

0

N

N

0

收入限制次数

11

expenditure_information_limit_times

int

10

0

N

N

0

支出限制次数

12

budget_information_limit_times

int

10

0

N

N

0

预算限制次数

13

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

14

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表budget_information (预算信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

budget_information_id

int

10

0

N

Y

预算信息ID

2

bank_name

varchar

64

0

Y

N

银行名称

3

account_number

varchar

64

0

Y

N

账户号码

4

account_type

varchar

64

0

Y

N

账户类型

5

account_user

int

10

0

Y

N

0

账户用户

6

revenue_budget

double

9

2

Y

N

0.00

收入预算

7

expenditure_budget

double

9

2

Y

N

0.00

支出预算

8

budget_balance

double

9

2

Y

N

0.00

预算余额

9

budget_date

date

10

0

Y

N

预算日期

10

remarks_details

text

65535

0

Y

N

备注详情

11

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

12

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

13

source_table

varchar

255

0

Y

N

来源表

14

source_id

int

10

0

Y

N

来源ID

15

source_user_id

int

10

0

Y

N

来源用户

表currency_classification (货币分类)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

currency_classification_id

int

10

0

N

Y

货币分类ID

2

currency_type

varchar

64

0

Y

N

货币类型

3

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表expenditure_information (支出信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

expenditure_information_id

int

10

0

N

Y

支出信息ID

2

bank_name

varchar

64

0

Y

N

银行名称

3

account_number

varchar

64

0

Y

N

账户号码

4

account_type

varchar

64

0

Y

N

账户类型

5

currency_type

varchar

64

0

Y

N

货币类型

6

account_user

int

10

0

Y

N

0

账户用户

7

user_name

varchar

64

0

Y

N

用户姓名

8

expenditure_amount

double

9

2

Y

N

0.00

支出金额

9

record_date

date

10

0

Y

N

记录日期

10

expenditure_remarks

text

65535

0

Y

N

支出备注

11

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

12

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

13

source_table

varchar

255

0

Y

N

来源表

14

source_id

int

10

0

Y

N

来源ID

15

source_user_id

int

10

0

Y

N

来源用户

表income_information (收入信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

income_information_id

int

10

0

N

Y

收入信息ID

2

bank_name

varchar

64

0

Y

N

银行名称

3

account_number

varchar

64

0

Y

N

账户号码

4

account_type

varchar

64

0

Y

N

账户类型

5

currency_type

varchar

64

0

Y

N

货币类型

6

account_user

int

10

0

Y

N

0

账户用户

7

user_name

varchar

64

0

Y

N

用户姓名

8

income_amount

double

9

2

Y

N

0.00

收入金额

9

record_date

date

10

0

Y

N

记录日期

10

income_remarks

text

65535

0

Y

N

收入备注

11

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

12

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

13

source_table

varchar

255

0

Y

N

来源表

14

source_id

int

10

0

Y

N

来源ID

15

source_user_id

int

10

0

Y

N

来源用户

五、系统实现

5.1用户端功能介绍

5.1.1登录界面

用户注册完成后,点击“登录”进入到登录页面,输入用户名和密码,点击“登录”按钮,对用户名和密码进行验证,根据传入的用户名和密码在数据库中是否能查询到一条用户信息,若不能返回用户信息则登录失败,页面提示用户名或密码错误。如下图所示。

图5-1登录界面图

5.1.2账户信息添加界面

用户可以在账户信息管理界面中列点击添加个人账户,包括银行名称、账户号码、账户类型、货币类型、账户用户、账户余额等详情。账户信息添加界面如下图所示。

图5-2账户信息添加界面图

5.1.3收入信息添加界面

用户可以在个人账户中记录个人的每一笔收入详情,在账户信息界面添加收入信息后具体输入资料保存。收入信息添加界面如下图所示。

图5-3收入信息添加界面图

5.1.4支出信息添加界面

用户可以在个人账户中记录个人的每一笔支出详情,在账户信息界面添加支出信息后具体输入资料保存。支出信息添加界面如下图所示。

图5-4支出信息添加界面图

5.1.5提醒信息添加界面

用户可以在提醒信息管理界面中点击添加提醒内容操作。提醒信息添加界面如下图所示。

图5-5提醒信息添加界面图

5.1.6预算信息添加界面

用户点击预算信息管理界面中可以具体输入各种收入支出预算明细。预算信息管理界面如下图所示。

图5-6预算信息添加界面图

5.2管理员端功能介绍

5.2.1普通用户管理界面

管理员可以查看所有系统注册端的用户信息,管理员统一对普通用户进行维护管理,如下图所示。

图5-7普通用户管理界面图

5.2.2账户信息管理界面

管理员可以查看所有的用户账号列表,也可以点击查看某个用户的具体账户详情。如下图所示。

图5-8账户信息管理界面图

5.2.3支出信息管理界面

管理员点击支出信息管理界面中查看每个用户的具体支出详情,对所有的支出数据进行维护管理,如下图所示:

图5-9支出信息管理界面图

5.2.4提醒信息管理界面

管理员点击提醒信息管理界面查看每个用户记录的收入、支出提醒明细,可以对所有的提醒数据进行维护管理。界面如下图所示。

图5-10提醒信息管理界面图

5.2.5账户统计界面

管理员可以将所有的用户账户中收入、支出等信息进行图标统计以及展示。界面如下图所示:

图5-11账户统计界面图

六 系统模块测试

6.1测试目的

系统测试是评估和验证该系统是否已经完成需求分析中要求的功能,对已开发的系统进行测试可以防止错误、提高性能和降低成本。系统测试还能发现系统的隐藏风险,将测试的结过反馈给技术人员为系统的评估提供重要数据。

在本系统中,主要对个人记账系统模块进行了测试,查看各个模块功能是否能够符合预期要求。

6.2 测试方法

首先是功能性的测试,通过系统运行,查看得到的结果是否和预期的一样,从而验证系统是否有误。

其次是兼容性测试,在不同的操作系统和网络环境下运行系统,查看系统是否能够正常运行。

接着是易容性测试,要求操作的复杂程度较低、用户能够在较短的时间内上手,不需要花费太多的时间进行学习,各个功能之间的联系应该紧密。

最后是安全性测试,登录系统时对用户名、密码和验证码的验证是否准确,信息报错是否和预期的效果一样。

6.3测试用例

1、系统登录测试

表6-1 系统登录测试用例

标题

用户登录验证

目的

验证登录功能的完整性和准确性

数据

用户名:admin密码:123456验证码:正确的验证码

内容

操作描述

数据

期望结果

实际结果

测试状态

1

输入用户名,点击“登录”。

用户名:admin,

密码:NULL

显示“用户名或密码错误!”

显示“用户名或密码错误!”

与期望结果相同

2

输入密码,点击“登陆”。

用户名:NULL,密码:123456

显示“用户名或密码错误!”

显示“用户名或密码错误!

与期望结果相同

3

输入用户名和密码,点击“登陆”按钮。

用户名:admin,密码:123456

登入到系统菜单界面。

登入到系统菜单界面。

与期望结果相同

  1. 主要功能测试

账户信息功能测试:

表6-2账户信息功能测试用例表

测试名称

测试功能

操作

操作过程

预期结果

测试结果

账户信息功能模块测试

账户信息正常显示

浏览账户信息信息

在用户端点击“账户信息”展示详情界面,可以进行增删改查

进入该账户内容界面

正确

账户信息功能模块测试

搜索标题

搜索某个账户信息

搜索框输入关键字眼,比如某个账户标题或者类型

生成对应的账户信息详情界面

正确

记录收入功能测试:

表6-3记录收入功能测试用例表

测试名称

测试功能

操作

操作过程

预期结果

测试结果

记录收入功能模块测试

记录收入可以正常操作

进行添加收入信息

点击用户端中的账户信息界面中的“添加收入”进行收入明细的录入

记录收入信息

正确

记录支出功能测试:

表6-4记录支出功能测试用例表

测试名称

测试功能

操作

操作过程

预期结果

测试结果

记录支出功能模块测试

记录支出可以正常操作

进行添加支出信息

点击用户端中的账户信息界面中的“添加支出”进行支出明细的录入

记录支出信息

正确

七、总结

本文详细探讨了基于Springboot框架的个人记账系统的设计与实现。通过合理的分层架构设计,结合Java语言、Mysql数据库等技术,构建了一个高效、便捷且易于维护的个人记账信息。在最初接到任务书的那一刻,比较迷茫,没有任何的思路,在经过了老师的指导以后,调查了一些系统相关的资料后,慢慢的有了头绪,开始入手开题,明确了系统的内容,对系统进行可行性的分析,确定系统可行以及功能内容以后,就按照开题初步设计的内容进行完善,慢慢补充、学习,最终结束了系统的开发,也完成了论文的写作。这一过程,虽然艰辛,但也学习到了很多,对项目开发流程也有了一个新的认识,动手能力也得到了提高,这正是书本上所学习不到的。

经过开发本项目,让我非常有成就高,与此同时我对程序的开发更加感兴趣了,信息技术真的很强大,也很深奥,在以后工作中,我将会寻找与其相关工作,继续深入学习,开发出更优秀的项目。

参考文献

[1]张芮珲. 数字经济时代网络金融风险防范探讨 [J]. 产业创新研究, 2024, (03): 138-140.

[2]迟晶晶. 加快推进信息化在金融经济管理中的应用 [J]. 中国商界, 2023, (12): 184-185.

[3]李自钦. 满足居民多元化资产管理需求[N]. 金融时报, 2023-10-18 (007). DOI:10.28460/n.cnki.njrsb.2023.005292.

[4]Liang C . School Vehicle Management System Based on JAVA Language [J]. Academic Journal of Computing & Information Science, 2023, 6 (9):

[5]周辉海. 基于SpringBoot和Vue框架的档案管理系统的设计与实现[D]. 南开大学, 2022. DOI:10.27254/d.cnki.gnkau.2022.000333.

[6]宋穗. 心理账户下互联网金融理财产品投资偏好研究[D]. 南京审计大学, 2021. DOI:10.27835/d.cnki.gnjsj.2021.000176.

[7]Liu S . Explore Java Language and Android Mobile Software Development [J]. International Journal of Frontiers in Engineering Technology, 2021, 3.0 (2.0):

[8]高会莎. 基于RPC的智能账套管理系统的设计与实现[D]. 首都经济贸易大学, 2020. DOI:10.27338/d.cnki.gsjmu.2020.001049.

[9]陈伟,张奥然,许信宇,等. 一个基于SpringBoot和AngularJS的家庭理财系统设计与实现 [J]. 电脑知识与技术, 2024, 20 (12): 46-49. DOI:10.14004/j.cnki.ckt.2024.0595.

[10]李伟. 国内家庭理财规划市场展望 [J]. 服务外包, 2022, (12): 40-41.

[11]闫秋萍. SSH框架下小微企业财务收支管理系统设计与实现 [J]. 微型电脑应用, 2021, 37 (12): 177-179+186.

致谢

在完成本论文的过程中,我要由衷感谢所有支持和帮助我的人。首先,我要感谢我的指导教师,他们给予了我宝贵的指导和建议,帮助我顺利完成研究工作。他们的专业知识和经验对我产生了深远的影响。此外,我要感谢我的家人和朋友,他们在我整个研究过程中给予了我无尽的鼓励和支持。他们相信我能够克服困难、坚持不懈地追求目标,这让我时刻保持积极向上的心态。最重要的是,我要感谢自己。在研究的过程中,我遇到了各种挑战和困难,但我从未放弃,始终保持着坚定的信念和努力的精神。正是这种勇气和毅力使我能够完成这项研究工作,并取得了令人满意的成果。

通过这次研究,我学到了很多知识和技能,也收获了自信和成长。我相信,只要我坚持努力和持续学习,就能够实现更大的成就和突破。因此,我将继续努力,为自己的梦想奋斗,成为一个有影响力和价值的人。最后,我再次向所有支持和帮助过我的人表示深深的感谢。你们的支持是我前进的动力,我会铭记于心,并用更好的成绩回报你们的期望和信任。谢谢!

请关注点赞+私信博主,免费领取项目源码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值