个人详细记账簿管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
代码行数756 项目名称个人记账簿管理系统
1.实训目的
面向对象程序设计课程设计是计算机科学与技术专业培养计划中的重要实践教学环节,旨在通过一个管理信息系统的开发,加深学生对Java语言的理解和应用,尤其是对面向对象编程思想、Java编码规范、图形用户接口、JDBC访问数据库的理解,巩固软件工程课程的相关知识,了解软件开发的基本流程,进一步提高学生的学习能力、理解能力、表达能力及沟通能力。
2.实训内容
使用MyEclipse为开发工具,使用Press on为建模工具,使用MySQL为数据库服务器,基于JDBC 技术,分析、设计并实现一个管理信息系统。
3.需求分析
3.1 需求描述
3.1.1 项目来源及背景
个人记账簿是每个人在生活中都会用到的APP,具有广泛的适用性和应用价值,也具备较易进行分析和设计的特点。
3.1.2 项目需求
主要功能
登录:输入账号和密码,完成登录操作,进入主界面,显示个人记账簿管理系统中所有的账单基本信息(主键、名称、消费时间、花费总额等)以及可进行的相关操作的选项。
退出:登录后可进行退出操作,结束整个程序。
注册:输入账户、密码和确认密码完成新用户的注册。
按创建时间显示所有的账单:登录成功后在主界面中以表格形式按创建时间升序显示所有账单的基本信息(主键、名称、消费时间、花费总额等)。
添加账单:输入一份账单的各项基本信息(名称、消费时间等),再输入这份账单中的各项花销,完成账单的添加操作,添加成功后以表格形式按创建时间升序显示所有账单的基本信息。
删除账单:根据显示的账单基本信息,输入某个账单的主键,完成账单的删除操作,删除成功后以表格形式按创建时间升序显示剩余账单的基本信息。
修改账单:根据显示的账单基本信息,输入某个账单的主键,显示账单的基本信息和账单中的各项花费,根据提示信息,选择要修改账单基本信息或某项花费或要删除的某项花费,输入相应字段值或要删除的某项花费的主键,完成账单信息的修改,修改成功后显示该账单修改后的详细信息。
查询账单:利用主键查询,获得一份账单的详细信息。
扩展功能
可对账单信息进行导出操作,存储至一个文本文档中。
3.2 用例描述
图3.1 系统用例图
4.功能设计
4.1 系统层次方框图
为保证系统具有较好的可维护性和可扩展性,对系统进行分层设计,共分四层:
●视图层:接收用户输入信息,显示界面信息和用户信息
●控制层:访问流程控制
●业务层:完成具体功能的实现
●数据库访问层:完成对数据库访问操作的封装
具体结构如下图所示:
DataBase
数据库访问层:DB类
业务层:XxxService类
控制层:Controller类、
视图层:XxxView类
4.2 算法设计(活动图或时序图)
1.登录功能
图4.1 登录功能时序图
图4.2 登录功能活动图
2.注册功能
图4.3 注册功能时序图图4.4 注册功能活动图
3.显示所有用户信息功能
图4.5显示所有用户信息时序图
图4.6 显示所有用户信息活动图
4.添加用户信息功能
图4.7 用户信息添加时序图
图4.8 用户信息添加活动图
5.查询用户信息功能
图4.9 查询用户信息时序图
图4.10 查询用户信息活动图
5.数据设计
5.1 类图设计
根据分析,系统由13个类构成,分别为:
●数据库访问层:DB类
●数据封装类:Login类、User类
●业务层:LoginService类、UserService类
●控制层:Controller类
●视图层:AddView类、DeleteView类、ModifyView类、QueryView类、MainView类、
Operation类
●其它:Test类
系统中各类之间关系如下图所示:
图5.1 系统类图
1.数据库访问层
DB类用于封装JDBC的操作,完成对数据库的直接访问,采用单态模式创建对象,具体内容如下所示:
图5.2 数据库访问层类图
2.数据封装类
Login类和User类分别用于登录、注册操作时的数据封装和用户信息管理时的数据封装,具体内容如下图所示:
图5.3 数据封装类类图
3.业务层
LoginService类进行登录、注册等对Login类的访问操作,UserService类进行用户信息管理的操作,两者均采用单态模式创建对象,具体内容如下图所示:
图5.4 业务层类图
4.控制层
Controller类用于进行系统的流程控制,具体内容如下所示:
图5.6 控制层类图
5.视图层
MainView类用于完成登录、注册等提示信息的显示和系统主界面的显示,具体内容如下所示:
图5.7 MainView类图
Operation接口是增、删、改、查等操作的抽象,AddView类、DeleteView类、ModifyView类和QueryView
类均使用Operation接口,分别完成增、删、改、查等操作,利用简单工厂模式与Controller类建立关系,具体内容如下所示:
图5.8 视图层类图
6.其它
Test类是程序的主类,用于启动系统,具体内容如下:
图5.9 Test类图
5.2 数据表设计
序号字段名类型长度备注
1 id int 4 主键、自增
2 uername varchar 20 唯一性、不为空
3 password varchar 20 不为空
t_login表
序号字段名类型长度备注
1 id int 11 主键、自增
2 name varchar 50 不为空
3 time date 默认不为空
4 total double 默认不为空
t_user表
6.运行结果