刘芳华 余丽萍
摘 要:为便于用户日常理财,本文基于Android设计并实现了一套记账助手APP系统。该系统运用SpringBoot+Mybatis框架进行设计,通过Controller控制MySQL数据库,从而实现数据库和服务器之间的数据交流,以达到用户记录、查询和统计用户收支情况的记账理财管理功能。经过大量测试,该系统运行良好,具有操作灵活、便于交互、实用性强等特点,能够为用户提供记录用户收支情况、查询收支信息等功能。
关键词:记账助手;Android系统;APP
中图分类号:TP311.56 文献标识码:A 文章编号:1003-5168(2019)26-0021-03
Design and Implementation of Accounting Assistant APP Based on Android
LIU Fanghua YU Liping
(Zhengzhou University of Light Industry,Zhengzhou Henan 450000)
Abstract: in order to facilitate users' daily financial management, this paper designed and implemented a set of accounting assistant APP system based on Android. The system uses spring boot + mybatis framework to design, through the controller to control MySQL database, thereby realizing the data exchange between database and server, so as to achieve the function of user record, query and statistics of user revenue and expenditure. After a large number of tests, the system runs well, has the characteristics of flexible operation, easy interaction and strong practicability, and can provide users with the functions of recording user's income and expenditure, querying income and expenditure information.
Keywords: accounting assistant;Android system;APP
随着生活水平的逐渐提高,人们的经济活动变得多元化。支付宝、微信等新的收支类型不断地出现,人们的收入和支出方式也从以前的单一模式转化为现在的多元模式,使得人们对日常收支的记账也开始变得复杂起来。每个家庭来自各个方面的收入不断增加,人们逐渐开始追求更高层次的消费。高层次理智的消费依赖于合理理财,而支付方式的多样性方便了人们消费的同时也增加了管理资产的难度[1]。人们的理财意识比以前更强,为了方便人们随时记录各种收支信息,了解自己的资金情况,笔者认为,设计一款能帮助用户实现自主规划个人财务的记账软件是很有必要的。由于手机的便捷性,研究一款基于Android的记账APP对于人们日常生活的理财来说是非常方便的,它可以帮助人们合理规划自己的钱财,提升生活质量。
1 系统功能需求分析
通过对人们记账情况的调查研究,笔者发现,在日常生活中,人们需要频繁地记录个人或家庭收支情况,查询收支情况,对收支情况进行简单统计。结合人们日常生活中记账的实际需求,本文设计的记账助手软件主要包括用户登录功能、用户类别管理功能、收支数据记录功能、收支數据查询功能、收支数据统计功能和用户管理功能等模块。该系统的主要功能模块如图1所示。
1.1 用户登录功能模块
在注册时,用户需要用自己的邮箱号或手机号来注册自己的账户,注册完毕后,用户只需要输入自己的用户名和密码,就可以登入自己的记账系统。
1.2 收支类别功能模块
用户可以根据自己的实际情况,看自己日常生活中的收入和支出主要属于哪种类别,可以进行添加类别操作,从而更好地进行理财。
1.3 收支数据记录功能模块
用户登录自己的记账系统后,可以在记账页面选择自己所要记的收入或支出类型,选定自己的记账日期等信息,然后按照收支所属类别进行记账。
1.4 收支数据查询功能模块
用户记账后,记账系统会自动生成用户目前的记账信息,用户可以去查询自己的所有收入或支出明细,可以随时了解自己收支数据的状态。
1.5 收支数据统计功能模块
用户将自己的收入和支出记录到该系统后,系统会自动对所记载的收支信息进行统计,并用图表的形式展现出来,让用户清晰地看出自己当前的收支统计数据情况,帮助用户更好地进行理财。
1.6 用户管理功能模块
用户如果想修改个人信息,可进入个人信息界面进行修改。如果想改自己的密码,用户可以通过设置功能中的重置密码功能重新设置。重置密码后,用户根据新的密码就可重新进入记账系统。
2 系统设计与实现
2.1 系统框架设计
本系统主要运用SpringBoot+Mybatis框架进行设计[2]。SpringBoot是一个为了解决企业级应用开发的复杂性而创建的开源框架,可以降低Java开发的复杂性,通过使用SpringBoot框架,程序中复杂的配置项得以减少,开发效率也有了很大的提高。MyBatis是一个支持数据库自定义、存储过程和高级映射的Java持久性框架[3],如果单独使用会有很多限制。Mybatis的功能架构主要由三层来构成,它们分别为接口层、数据层和支撑层。
2.1.1 接口层。这些接口主要是为外部提供的,被称为API接口。而开发者要想操作数据库,就必须通过这些接口来实现[4]。当收到开发者想要调用的请求时,接口层就会根据请求调用所需要的数据进行相应的数据处理。
2.1.2 数据处理层。处理层主要的任务就是根据接口层收到的调用请求进行处理,完成一次完整的数据操作流程。
2.1.3 基础支撑层。它主要提供基础的功能,去支撑上面的数据处理层,包括连接管理、事务管理、配置加载和缓存处理。这些基础组件会特意放在一起,为上面数据处理提供基础性支持。
为了克服MyBatis存在的不足,本系统将MyBatis与SpringBoot结合起来使用,使得SQL和程序代码之间的相互联系变少,也让它们之间尽可能不再相互影响。在开发记账助手时,分开业务逻辑和数据访问逻辑,使得系统设计变得更加清晰,同时便于管理和维护。
2.2 数据库设计
本系统采用的数据库是MySQL关系型数据库。结合本系统功能需求分析和数据完整性要求,本文提出的记账助手软件在数据库中主要创建了五张基本数据库表,用于支持该软件中各个功能数据的存储。用户表用来存储用户信息,收支人员表用于存储家庭收支人员基本信息,收支类别表用于存储收支隶属类别基本信息,收入记账表用于存储收入类别、收入金额、收入时间和收入人员等信息,支出记账表用于存储支出类别、支出金额、支出时间和支出人员的信息。主要数据库表之间的关系为:用户表与收支人员表为一对多的关系,用户表与收支类别表为一对多的关系,收支类别与收入记账表是多对多的关系。类似地,收支类别与支出记账表是多对多的关系。
2.3 系统功能设计与实现
2.3.1 用户登录模块设计与实现。用户第一次登录这个系统时,应该先进行注册。注册的信息包括邮箱号、用户名和密码等信息。注册成功后,用户只需要输入当时注册的用户名和密码,就可以登录到记账助手系统界面。一旦输入错误的用户名或者密码,系统登录页面会弹出错误信息,提示重新输入。登录后,用户在个人信息界面可以修改个人信息或添加家庭人员信息。
2.3.2 收支类别模块设计与实现。用户根据自己的实际情况可添加所需要的收支类别。添加好收支类别后,系统会对用户所添加的收支类别进行判断,分析其是否为新增类别,如果数据库中无对应类别,系统会将该类别新增至收支类别表中。如果收支类别表中收支类别无相关联收支明细,用户还可以根据实际需要进行修改或删除收支类别。
2.3.3 收支数据记录模块设计与实现。收支数据记录模块又包括收入支出添加功能模块、收入支出删除功能模块和收入支出编辑功能模块三个子功能模块。
一是收入支出添加功能模块,可以添加收入和支出明細,添加收支信息时,需要选择对应的收支类别、收支金额、收支日期和收支人员等信息。如果收支人员信息为空,系统会默认为该收支记录隶属用户名下,这种情况属于个人收支记账管理。二是收入支出删除功能模块,用于删除用户记错的收支信息。三是收入支出编辑功能模块,用于用户对指定收支信息进行错误修改,对收支信息添加备注,方便用户查找特殊的收支信息。
进入记账系统后,用户想要记账时可以点击添加记账信息功能按钮,不管收入还是支出,在记账时都需要选择类别,之后,用户还需要输入本次记账的收支金额,确认无误后,点击确定。用户还可对收支进行删除和编辑功能。对于特殊的收支,可以通过编辑功能添加备注信息,对收支信息添加备注,会让用户更加清楚了解自己的收支具体情况。
2.3.4 收支数据查询模块设计与实现。明细查询功能模块主要就是对用户的历史记账记录进行查询,用户在主页面上登陆后,选择指定起止时间,则可查询用户指定时间的记账记录明细情况,方便用户对自己以往的记账记录进行回顾,了解之前的记账情况,查看自己特定期日的记账信息。
2.3.5 收支数据统计模块设计与实现。收支数据统计页面显示的统计结果是由第三方控件实现的,通过从MySQL获取的数据显示各类别的收支分别占总收支的百分比、收入的总金额和支出的总金额等信息;用户可以通过界面上的侧滑菜单进行收支统计图表切换,通过收支数据统计模块,用户可以直观地看到统计出来的收支总数据以及各个类别数据所占的比例大小,直观地分析出自己的收支情况,从而更加合理地分配自己的钱财。
2.3.6 用户管理模块设计与实现。用户登录记账系统后,如果想对密码进行修改,可以在模块密码管理中进行密码更改。为了保证密码的准确性,用户需要输入新密码两次,点击确认后,即可更改密码。
3 结论
本文提出的记账助手APP是一款便携式的Android记账助手软件,可用于个人或家庭记账,其功能很贴近大众的需求,在手机上只需进行简练操作就可以添加收支记录,用户可以随时随地地记录和查看自己的财务收支数据。通过记录每日的收支信息,用户可以清晰地掌控自己的资金剩余情况以及消费记录,达到合理理财的目的,合理规划自己的财务收支,提升生活质量。
参考文献:
[1]陈童,周春樵.一种基于Android的学生用资产管理系统设计[J].物流工程与管理,2017(1):131-133.
[2]宋颖玲.基于Android平台的记账系统的设计与实现[D].成都:电子科技大学,2014.
[3]李沛.基于SpringBoot的职来职往小程序开发[J].中国科技信息,2018(22):74-75.
[4]盛实旺.个性化的智能饮食推荐系统开发[D].杭州:浙江理工大学,2016.