家庭记账管理系统数据库课程设计报告

合集下载

家庭财务管理系统

家庭财务管理系统

课程设计说明书课程设计名称:_______ 数据库课程设计______________ 课程设计题目:家庭财务管理系统_____________ 学院名称:____________ 信息工程学院_______________ 专业:计算机应用与技术班级:____________、数据库需求分析:对于"家庭财务管理系统"而言,整个系统就是一个加工"家庭财务管理”。

从用户的需求描述可知,”管理员"是数据的源点,”普通用户"是数据的终点。

另外,管理员需要录入用户信息、理财信息和日常管理信息,说明”用户信息"、”理财信息"和"日常管理信息"是数据流;同样,”统计请求”和"统计结果"也是数据流。

根据上述分析,得到如图所示的第1层DFD一层数据流图根据第1层DFD图绘制下一层数据流图时,细化第1层的加工"家庭财务管理”,从而描述系统的主要功能。

从第1层DFD得知,”用户信息"是管理员需要录入的一个信息,因此加入一个加工”录入用户信息",同样得到”录入理财项目信息”、”录入日常管理信息"两个加工。

另外,数据流”统计报告请求”和"统计报告结果”应该由加工”统计报告” 来完成。

这样,我们用”录入用户信息"、”录入理财项目信息”、”录入日常管理信息”和"统计报告”四个加工代替第1层的"家庭财务管理”,同时增加这些数据流对应的数据存储,即”用户”、”理财”和"日常管理”,最后得到如图所示的第2层DFD二丿公数据流图继续进行分解,分析第2层DFD中的加工”统计报告”。

用户统计报告时需要提供合法性检查,因此,”统计报告”可以分解为”合法性检查”和"统计"两个处理步骤,从而形成如图所示的第3层DFD活期银行信息借入信息查询统计• 查询借岀借岀信息合法查询条件告结果 ------------------支岀统计出借入w—三层数据流图[斤入丰泪 »|人丿卜仮、收入来源信息收入信息成员信息一——:家庭成员成员信息 _____________•家庭成员"活期银行账户走期银行 账户存款信息存储定期银行信<丿t借入款借贷信息 借岀款收入统计报告请求合法性检查/匚件支岀信息*支岀类型活期__________定期家庭成 员支岀人员 •■收入人员经手人经手人户主数据字典(一)、数据项1 数据项名:编号;数据类型:int ;数据长度:4;2 数据项名:姓名;数据类型:nvarchar ;数据长度:50 ;3 数据项名:备注;数据类型:nvarchar ;数据长度:50 ;4 数据项名:收入来源;数据类型:nvarchar ;数据长度:50;5 数据项名:支出类型;数据类型:nvarchar ;数据长度:50;6 数据项名:收入日期;数据类型:datetime ;数据长度:8 ;7 数据项名:收入人员;数据类型:int ;数据长度:4 ;8 数据项名:收入金额;数据类型:float ;数据长度:16;9 数据项名:支出日期;数据类型:datetime ;数据长度:8;10. 数据项名:支出人员;数据类型:int ;数据长度:4;11 数据项名:支出金额;数据类型:float ;数据长度:16;12 数据项名:账户编号;数据类型:int ;数据长度:4;13 数据项名:日期;数据类型:datetime ;数据长度:8;14 数据项名:经手人;数据类型:nvarchar ;数据长度:50;15 数据项名:存入金额;数据类型:float ;数据长度:16;16 数据项名:支出金额;数据类型:float ;数据长度:16;17 数据项名:初始金额;数据类型:float ;数据长度:16;18 数据项名:余额;数据类型:float ;数据长度:16;19 数据项名:预还日期;数据类型:datetime ;数据长度:8;20 数据项名:借出日期;数据类型:datetime ;数据长度:8;30 数据结构名:借入款;组成:编号 备注;+借入日期 +预还日期 +借入人 +出借人 +借入金额 +31 数据结构名:借出款;组成:编号 备注;+借出日期 +预还日期 +出借人 +借贷人 +借出金额 +32 数据结构名:活期银行账户;组成:编号+账号 +账户类型 +卡号+账户户主姓名 +初始33 数据结构名:定期银行账户;组成:编号 金额 +余额 +开户银行 +开户日期;+账号 +账户类型 +卡号+账户户主姓名 +初始34 数据流名:家庭成员信息;数据流来源:户主;数据流去向:家庭成员信息表21 数据项名:开户银行;数据类型: nvarchar ;数据长度: 50; 22 数据项名:开户日期;数据类型: datetime ;数据长度: 8;二)、数据结构23 数据结构名:用户;组成:编号+姓名+备注; 24 数据结构名:收入来源;组成:编号+收入来源; 25 数据结构名:支出类型;组成:编号+支出类型;26 数据结构名:日常收入;组成:编号+收入日期+收入人员+收入来源+收入金额+ 备注; 27 数据结构名: 日常支出组成: 编号+支出日期+支出人员+支出类型+支出金额+备 注; 28 数据结构名:活期账户;组成:编号+账户编号+日期+经手人 +存入金额 +支出金额 +备注;29 数据结构名:定期账户;组成:编号+账户编号+日期 +经手人 +存入金额 +支出金额 +备注;金额 +余额 +开户银行 +开户日期;三)、数据流35 数据流名:收入信息;数据流来源:户主;数据流去向:家庭成员信息表36 数据流名:支出信息;数据流来源:户主;数据流去向:家庭成员信息表37 数据流名:统计报告请求;数据流来源:户主;数据流去向:统计报告38 数据流名:统计报告结果;数据流来源:统计报告;数据流去向:户主家庭成员信息包括的数据项由:编号,姓名,备注。

C语言家庭财务管理系统设计报告

C语言家庭财务管理系统设计报告

东华理工大学C语言课程设计实验报告题目:家庭账务管理姓名:曾祥华班级:1321815学号:201320181518指导老师:程志梅一案例描述1.总体描述家庭财务管理系统主要是对家庭成员的收入,支出,进行添加,删除,查询等操作,并能统计总收入和总支出。

该软件给家庭成员提供了一个管理家庭财务的平台。

2.模块描述1)菜单设计:本系统提供简单易操作的界面。

有提示,帮助用户根据需要对家庭财务管理系统进行操作。

2)添加模块:根据实际的收入或支出,添加相应的记录,条数不限。

3)查询模块:可以选择不同关键字输入,查找该条记录。

4)删除模块:若某条记录错误或者不需要则可以删除。

5)显示模块:按照添加的先后顺序依次把记录显示在屏幕上,并显示总收入和总支出以及余额。

6)退出模块:退出财务管理系统并保存文件。

二界面设计界面有相应的选择,根据自己的需要对该管理系统进行添加,查找,删除,显示功能操作。

本软件界面友好,不难操作,用户可根据自己的需要按提示进行。

三模块化设计方案1.系统主要函数及功能1)DataInit函数:功能为数据初始化将数据从硬盘传到内存。

2)add函数:功能为添加收入或支出的记录3)search函数:功能为查找联系人输入关键字,从文件中搜索相应的记录并显示出来。

4)delete_rec函数:功能为删除记录若某条记录错误或者不需要则可以删除。

5)show函数:功能为显示记录将添加的记录显示在屏幕上。

6)quit函数:功能为保存信息退出系统2.主函数调用各功能函数流程四.数据结构描述struct F_Data{int year; //年int month; //月int data; //日期float amout; //金额char name[20]; //姓名int type; //收入或支出类型开始打开文件,载入信息用户菜单界面1 添加记录2查询记录3删除记录4显示记录退出保存结束char comment[100]; //备注struct F_Data*next; //定义一个指针};该数据结构为链表,是一种动态进行存储分配的结构。

个人记账系统课程设计报告

个人记账系统课程设计报告

个人记账系统课程设计报告1000字该报告涵盖了个人记账系统课程设计的全面介绍,包括该系统的目标、原则、功能、技术架构和实现方式。

这个系统的设计旨在帮助用户轻松地独立管理他们的财务记录,同时提高他们对于自己财务状况的认知和理解。

1. 系统目标个人记账系统的目标是为个人提供一种自动记录和跟踪他们的财务状况的方式。

它将允许用户轻松地记录收入和支出,并根据它们的类别和日期进行归类。

此外,该系统还将允许用户设置预算和目标,以便能够更好地理解他们的财务状况并做出适当的调整。

2. 系统原则在设计该系统时,考虑到以下几个原则:- 用户友好 - 用户能够轻松地使用该系统,并快速地完成设置、添加记录和查看报告等任务- 安全性 - 系统需要保护用户的财务记录,确保他们的数据不会被未经授权的第三方访问- 可扩展性 - 系统需要允许用户根据自己的需要添加新的支出和收入类别,并允许他们在需要时修改预算和目标- 高效性 - 系统需要具有高效处理和存储财务记录的能力,并在需要时快速生成报告3. 系统功能该系统将具有以下主要功能:- 财务记录的添加:用户将可以添加支出和收入记录,并选择适当的类别和日期进行归类- 财务记录的编辑和删除:用户将可以编辑和删除他们的财务记录- 预算和目标的设置:用户将可以设置每月的预算和目标,并根据需要进行修改- 报告生成:用户将获得能够帮助他们理解他们的财务状况的报告,如月度支出和收入、类别分析等等- 平衡表的生成:用户将获得一份按月生成的平衡表,以便更好地跟踪他们的财务状况4. 技术架构该系统将使用PHP和MySQL作为后端技术,使用HTML、CSS和JavaScript作为前端技术。

最终系统将部署在云端服务器上,并通过Web浏览器进行访问。

服务器将使用Linux操作系统,并使用Apache Web服务器和PHP脚本语言。

5. 实现方式该系统的实现将包括以下阶段:- 需求分析和设计:这个阶段需要确定系统的功能、原则和技术架构,以及确保它们与用户需求相符合- 开发:这个阶段将涉及到编写PHP和JavaScript脚本,并使用MySQL数据库存储财务记录数据- 测试:这个阶段将包括对系统进行单元测试和集成测试,以确保它符合设计规范并能够正确处理数据- 部署和维护:在这个阶段,系统将部署到云服务器上,并开展常规维护工作,以确保其可靠性和安全性。

家庭财务管理系统报告

家庭财务管理系统报告

《程序设计基础》课程设计报告题目家庭财务管理系统设计专业班级学号姓名指导老师完成时间目录1 设计要求 .................................................................................................. 错误!未定义书签。

2 系统设计 ............................................................................................... 错误!未定义书签。

2.1 设计思路................................. 错误!未定义书签。

2.2 系统功能模块............................. 错误!未定义书签。

2.3 系统流程图............................... 错误!未定义书签。

2.4 算法设计与描述........................... 错误!未定义书签。

3 关键程序代码 .......................................................................................... 错误!未定义书签。

4 程序运行结果 .......................................................................................... 错误!未定义书签。

5 总结 .......................................................................................................... 错误!未定义书签。

参考文献 ........................................................................................................ 错误!未定义书签。

家庭理财系统数据库课程设计报告

家庭理财系统数据库课程设计报告

数据库原理及应用课程设计报告题目:家庭理财专家班级: 1020562学号: 20:武普泉指导老师:宇君提交时间: 2012-12-30一、需求分析1.系统需求与功能分析a).课题背景:近几年来,随着我国城乡居民收入的增加和生活水平的提高,家庭理财已成为人们居家过日子的重要容。

社会学家细心的观察到,时下家庭的财务管理比之计划经济年代,开始发生微妙的变化。

现在的城乡家庭生活发生了明显的变化,人们的收入逐渐拉开档次,消费水平也高了。

大多数家庭关注的是提高生活质量,一方面精打细算,量入为出,把钱用在刀刃上;另一方面保证适当的娱乐活动、社会交际、智力开发等方面的开支。

为此,不少家庭就有中长期财务预算,有基本建设规划。

总的来说,家庭收入必须以量入为出为原则,以财产保值增值为目标,处理好积累与消费的关系。

因此,开发一个家庭财务管理系统具有很强的实用性,能够达到对家庭财务合理有效的管理。

b).用户功能:●用户登录,进入本系统,弹出密码对话框,提示用户输入密码,登录本系统。

●类别维护,用户可以增加日常收入、日常支出的类别,并且可以删除相应的类别。

●日常收入,用户可以按照日常收入日期、金额、类别、备注进行数据的增加。

●日常支出,用户可以按照日常支出日期、金额、类别、备注进行数据的增加。

●收入支出统计,按照一定的数据查询条件,用户可以对数据进行统计。

●计算器,可以对活期存款、定期存款进行相应的计算,求其增长值。

●收入查询,用户可以输入相应的查询条件进行数据查询,并且可以删除相应的数据。

●支出查询,支出查询类似于收入查询,同样可以进行查询、删除操作。

●个人信息,用户可以增加自己的个人信息,同时可以修改登录密码。

2.数据库需求和分析a).数据结构(数据库中表的设计)收入类别信息(收入类别,收入类别说明)收入信息(收入编号,收入类别,日期,金额,备注)支出类别信息(支出类别,支出类别信息)支出信息(支出编号,支出类别,日期,金额,备注)家庭成员信息(称呼,,密码,用户名,生日)b).数据项具体设置(建议放到数据库实施中)二、概念结构设计1.流程图(系统功能模块图)2.数据库概念结构设计(E-R模型:注意标出是哪种联系)a).收入类别信息:b).收入信息:c).支出类别信息:d).支出信息:e).家庭成员信息:f). 综合以上E-R图模型,得出整个系统的E-R关系图:1. 由E-R图转化的关系模式为:收入类别信息(收入类别,收入类别说明)收入信息(收入编号,收入类别,日期,金额,备注)支出类别信息(支出类别,支出类别信息)支出信息(支出编号,支出类别,日期,金额,备注)家庭成员信息(称呼,,密码,用户名,生日)2. 对关系模式进行规化在收入类别信息表中,收入类别为码,收入类别说明完全依赖于码,不存在部分依赖和传递依赖,达到第三式;收入信息表中,收入编号为码,其他信息完全依赖于码,不存在部分依赖和传递依赖,达到第三式;在支出类别信息表中,支出类别为码,支出类别说明完全依赖于码,不存在部分依赖和传递依赖,达到第三式;支出信息表中,支出编号为码,其他信息完全依赖于码,不存在部分依赖和传递依赖,达到第三式;家庭成员信息表中,用户名为码,其他信息完全依赖于码,不存在部分依赖和传递依赖,达到第三式;3. 数据库的完整性和安全性作何考虑?安全性:有两种角色:老妈和普通家庭成员。

(完整版)家庭财务管理系统数据库设计说明书

(完整版)家庭财务管理系统数据库设计说明书

数据库设计说明书1、系统功能模块图为:2、系统 E-R 图为:注:系统一共设计四张表,用户表、账簿表、子项目表及父项目表。

说明如下:用户表:用于记录用户的各项相关信息,其中用户编号及密码为非空(登录时用)。

账簿表:用于连接用户表与子项目表,并拥有自身的属性字段。

子项目表:由于本系统只设计了两层项目,即子项目与父项目且父项目包含子项目中的若干信息。

3.1 系统的数据表结构为:FinanceItemInfo :属性名数据类型长度允许空约束备注条件FinanceItemID int 10 主键账簿编号,基数1001,变量自增 1UserID Int 4 √用户编号,外键SonCategoryID Int 4 √子项目编号,外键FinanceItemDate Datetime 50 √账簿日期FinanceItemRemark varchar 50 √账簿备注Amount float 50 √账簿金额FatherCategoryInfo :属性名数据类型长允许约束条备注度空件FatherCategoryID int 10 主键父项目编号,基数1001,变量自增 1FatherCategoryName varchar 50 √父项目名称BalanceType varchar 50 √收支类型SoncategoryInformation :属性名数据类长允许约束条备注型度空件SonCategoryID int 主键子项目编号,基数1001,变量自增 1SonCategoryName varchar 50 √子项目名称FatherCategoryID Int 4 √父项目编号,外键UserInformation :属性名数据类长允许约束条备注型度空件UserID int 主键用户编号,基数1001 ,变量自增 1 UserNickName varchar 50 √用户名UserName varchar 50 √用户真实姓名UserRole varchar 50 √用户角色UserRight varchar 50 √用户权利UserPassword varchar 50 用户密码3.2 系统中的数据元素:名字: UserInfo别名:用户信息描述:家庭成员的个人信息,用于对家庭成员的管理和确认定义: UserInfo= UserID + UserNickName + UserName +UserRole + UserRight + UserPassword位置:输入到 UserInfo 数据表名字: FatherCategoryInfo别名:父项目信息描述:父项目的信息,用于管理员对父项目的管理定义:FatherCategoryInfo = FatherCategoryID +FatherCategoryName + BalanceType位置:输入到 FatherCategoryInfo数据表名字: SoncategoryInfo别名:子项目信息描述:子项目的信息,用于管理员对子项目的管理,每个子项目都有相应的父项目定义:SoncategoryInfo = SonCategoryID + SonCategoryName +F atherCategoryID位置:输入到 SoncategoryInfo 数据表名字: FinanceItemInfo别名:账簿信息描述:一个家庭只有一个账簿,用于记录家庭各个成员的收支情况定义: FinanceItemInfo = FinanceItemID + UserID +SonCategoryID + FinanceItemDate +FinanceItemRemark + Amount位置:输入到 FinanceItemInfo 数据表名字:成员查看家庭收支账目信息别名:描述:家庭的成员可以根据需要查看,查询家庭的报表情况,可以按成员,日期,年度,月份进行查询名字:成员查看家庭成员信息别名:描述:家庭的成员可以根据需要查看家庭成员的信息定义:成员查看家庭成员信息 =成员编号 +真实姓名 +用户名位置:成员点击查看时显示到页面名字:成员查找账簿信息别名:描述:家庭的成员可以根据需要查找家庭的账簿信息定义:成员查找账簿信息 =收支项目 +收支日期 +收支家庭成员 +收支金额 +备注位置:成员进入账簿管理页面,点击查看时显示输出到页面由于数据字典较多,在此只以上边几个作简要说明4、数据流图为:4.1顶层数据流程图为:4.2 1层数据流程图为:。

数据库课程设计个人记账管理系统_2

数据库课程设计个人记账管理系统_2

《管理软件开发》课程设计报告——个人记账管理系统一、设计时间2011年12月 26日-----12月30日二、设计地点湖南城市学院一实验楼 511机房三、设计目的1.运用所学的数据库基础知识, 设计并编写一个《个人记账管理系统》的开发。

2.掌握数据库原理的相关理论和数据库的设计实现过程。

3.在实际项目中培养相关知识和综合应用的能力;4、培养学生查阅资料的习惯, 提高学生独立思考和解决问题的能力。

四、设计小组成员0806402-04 江国丰 0806402-22欧阳明双 0806402-35姚凯五、指导老师吴宏斌老师黄雪华老师六、设计课题通过对一些实际问题的软件设计, 使学生能将课本的理论知识应用于实践, 编制出较为实用的小系统《个人记账管理系统》:1.记账管理增加;2.记账管理修改;3.记账管理删除;4.记账管理查询;七、基本思路及关键问题的解决方法该系统总共分为四块, 采用MVC模式编写的个人记账管理系统信息维护。

我负责的个人记账管理系统信息维护的修改与删除:UpdateDialog.java 修改信息AccountDao.java 调用dao层的deleteAccount(String condition)删除函数个人记账管理系统的思路及关键问题的解决方法:对个人记账的财务收支进行管理, 实现对个人财务的明细账单的增、删、改、查的功能。

八、算法及流程图1.算法流程图个人记账管理系统算法及流程图2.功能模块图个人记账管理系统功能模块图3.ER图记账信息表:记账ID,记账开销, 收支费用, 收支时间, 收支方式, 备注个人记账管理系统ER图九、调试过程中出现的问题及相应解决办法1.修改后台数据不成功显示?解决办法:连接后台数据出错, 修改连接方式, 数据库表的字段名称, 调试后, 成功已显示。

2.根据ID删除记录有问题, 不能删除?解决办法:进从后台获取id时出错, 没读到后台数据库的id, 修改调试代码, 删除成功。

家庭财务管理系统的设计与实现(1)

家庭财务管理系统的设计与实现(1)

滨江学院数据库系统课程设计报告课程名称:jsp系统课程设计题目:家庭财务分析系统院系:计算机系班级: 计科1学号:20122308018姓名: 乔洲指导教师:陈遥第一章引言改革开放以来,中国经济得到了迅速的发展,家庭收入也与日俱增,随着房产热、私家车、出国游等走入寻常百姓家,如何规划财富,如何让财富增值,如何享受财富也日渐成为每个家庭关注的话题。

家庭财务管理系统以家庭理财的概念、理论、本质为基础,剖析了家庭的经济结构,并对理财市场和理财产品进行了分析,在此基础上提出了家庭理财的模式及如何进行家庭理财规划。

家庭理财系统是每一个家庭管理家庭财务收入和支出的不可缺少的一个管理信息系统,它的内容对于家庭的管理者来说是至关重要的,所以家庭理财系统应该能够为一个家庭的管理者提供充足的信息和快捷的查询手段,方便家庭的管理者的合理理财。

作为计算机应用的一部分,使用计算机对家庭财务进行管理,具有着手工管理所无法比拟的优点,如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。

这些优点能够极大地提高家庭财务管理的效率,也是家庭理财的科学化、正规化管理,与先进科学技术接轨的重要条件.第二章需求分析2.1系统设计目标现代社会家庭的理财观念进一步提高,理财手段变得更加丰富。

随着生活水平和文化水平的提高,家庭购买电脑的能力和应用电脑的能力开始提高.电脑及其应用的普及化,人们应用电脑进行家庭财务管理的观念增强,因此,开发一个通用性家庭财务管理软件已经成为社会需求。

本系统是一个家庭通用型理财软件,系统目标是把适合家庭化管理的各种理财手段及家庭日常收支管理实现计算机化管理,使对家庭及家庭成员的收支活动更好地进行记录并加以统计分析成为可能,也使家庭理财变得方便、快捷、全面.2.2系统数据分析家庭理财的中心内容账务管理。

人们几乎每一天都会经过许多次货币活动。

其中包括了买入卖出实物,娱乐消费,起居饮食消费,还有发放工资等。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《数据库原理及应用》课程设计报告题目家庭记账管理系统学生姓名学号 4专业班级网络工程指导老师设计日期 2014年6月25日指导老师评阅意见:评阅成绩:签名:一、课题任务课题目的:家庭记账也是一门科学,必须按照科学的方式来进行,才能有效果。

家庭记账的原理与企业记账类似,有两个基本要素,一是分账户,要有账户的概念,分账户可以是按成员、按银行、按现金等,不能把所有收支统计在一起,要分账户来记。

二是分类目,收支必须分类,分类必须科学合理,精确简洁,类目相当于会计中的科目。

由此可见,家庭记账也需要系统性的管理。

家庭记账数据库管理系统是为了让用户更简便的进行日常及记账。

课题意义:1、在进行前台设计时,我们运用的是本学期所学的Java语言,Java语言是一门很灵活也很方便的语言,尽管老师平时在课堂上传授了很多Java语言的基础知识,但,要掌握一门语言,课堂上的输入远远不够,因此,通过此次课程设计,可以加深对java 的运用能力。

2、数据库是一门很有学问的计算机基础学科,他对于我们以后在计算机方面的发展有着承前启后的作用,我们都知道,大学的学习更多的是实际操作。

虽然数据库是门理论性很强的学科。

但,只有将所学的东西运用于实践,用自己所学的知识制作出用户有用的产品才是最能激励自己的。

也只有在事件中才能补充自己知识的缺陷,此次课程设计就是让我们更熟悉设计数据库的过程并更灵活的运用起来。

3、家庭记账是每个用户都要做的是,一个方便的高效可靠的记账系统可以让用户们的记账更简便。

课题要求:本系统要求对家庭的收入情况,教育支出情况,非教育支出情况进行系统的分析设计,并形成系统的说明书同时用Eclipse来实现该系统。

目的是通过系统分析,使各个家庭对自己的家庭财务有一个全面的了解和分析,以便能做到节约开支,细水长流,同时进行必要的投资。

4、可行性分析:可行性研究的目的是用最小的代价在尽可能短的时间内解决问题。

经济可行性:计算机的价格已经非常低廉,性能却有了长足的进步。

二本系统的开发,为家庭的工作效率带来了一个本质的飞跃为此主要表现在以下几个方面:第一,本系统的运行可以代替人工进行许多繁杂的劳动;第二,本系统的运行可以节省许多资源;第三,本系统的运行可以大大提高家庭的工作效率,等等。

所以本系统在经济上是可行的。

技术可行性和运行可行性:为了有助于更好的系统的开发,我自己对社会普通家庭的收入情况有了初步的了解。

现在普通家庭的固定收入在几千元左右,每月在各个方面至少要1000元左右的开销,加上固定的各项费用,方方面面很复杂,很难清楚明了的记录下来,一般是手工记账,这样很麻烦也算不清楚,每个月都要花大量的时间在算钱上,而由于一些比较缺乏电脑方面的知识,所以,电脑对他们来说只是一个摆设但只要安装家庭理财系统,他们将只要点击鼠标就可以对家庭的收支情况进行系统和计算。

本系统开发利用SQL Server2005作为本系统的数据库,他是一个支持多用户的新型数据库,适用于各种大中小规模的数据需求。

使用Eclipse作为被系统开发环境,Eclipse拥有一个可视化的集成开发环境,采用面向对象的编程语言Java的开发结构框架。

Eclipse 提供了500多个可使用构件,利用这些部件,开发人员可以快速的构造出应用系统。

开发人员也可以根据自己需要修改部件或用本身编写的部件。

他作为一种现代化的编程语言,提供完善的指令控制语句、类与对象的支持及丰富数据类型给开发高兴能提供了保障。

综上所述,本系统的设计与开发在技术和硬件设备上的条件都是满足的,因此,它在技术上是可行的。

本系统为一个小型的家庭理财系统,所耗费的资源非常小,学校的电脑无论是在硬件和软件都能满足条件,因此,本系统在运行上是可行的。

子课题任务名称:Java语言支持的界面设计,数据库的建立,数据库与Java的连接。

二、需求分析(含业务流程图,数据流程图,E-R图等)业务流程图E-R图数据流图三、概要设计(模块划分等)系统功能模块本系统分为五大功能模块:收入登记,非教育支出登记,教育支出登记,支出总查询,退出系统收入登记功能:点击收入登记可进入收入登记界面,再根据需要点击添加记录或删除记录功能键进行添加或删除。

最后点击刷新,即可看到操作之后的界面。

最后点击退出,即完成了收入登记操作。

非教育支出登记功能:点击非教育支出登记可进入非教育支出登记界面,再根据需要点击添加记录或删除记录点击添加或删除。

最后点击刷新,即可看到操作后的界面。

最后点击退出,即完成了非教育登记操作。

教育登记操作:点击教育支出登记可进入教育支出登记界面,再根据需要点击添加记录或删除记录点击添加或删除。

最后点击刷新,即可看到操作后的界面。

最后点击退出,即完成了教育登记操作。

支出总查询:点击支出总查询,则可看到支出总查询界面,从上面可看到近期的支出情况,在右下角会有一个余额的显示。

如果需要删除则可点击删除界面。

操作完毕点击退出。

退出系统:上述操作都完成则可点击退出系统键退出系统。

四、详细设计1、数据库的设计底层数据表的结构如图一:图一.数据表的结构数据表的截图如图二:图二.数据表数据库与java连接的代码如下:package com.wenlixueyuan;import java.sql.*;public class Database {Connection conn = null;ResultSet rs = null;Statement stmt = null;PreparedStatement pstmt = null;public RecordItem[] AccessData() throws Exception {Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver" );String url = "jdbc:odbc:FA";conn = DriverManager.getConnection( url, "root", "admin" );stmt= conn.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABL E );String SQL = "select * from pf";rs = stmt.executeQuery( SQL );RecordItem[] item = new RecordItem[ 100 ];for ( int j = 0; j < 100; j++ )item[ j ] = new RecordItem();int i = 0;while ( rs.next() && ( i < 100 ) ) {item[ i ].SetEmployeeID( rs.getString( "经手人" ) );item[ i ].SetEmployeeName( rs.getString( "日期" ) );item[ i ].SetOnWorkTime( rs.getString( "收入" ) );item[ i ].SetOffWorkTime( rs.getString( "非教育支出" ) );item[ i ].SetLeaveWorkTime( rs.getString( "教育支出" ) );item[ i ].SetDescribe( rs.getString( "备注" ) );i++;}RecordItem[] result = new RecordItem[ i ];for ( int j = 0; j < i; j++ ) {result[ j ] = new RecordItem();result[ j ] = item[ j ];}rs.close();stmt.close();conn.close();return result;}public void StoreData( RecordItem item ) throws Exception {Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver" );String url = "jdbc:odbc:FA";conn = DriverManager.getConnection( url, "root", "admin" );stmt = conn.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE );String SQL1 = "select * from pf where 经手人 = '" +item.GetEmployeeID() + "'";rs = stmt.executeQuery( SQL1 ); //查找是否存在该员工的记录System.out.println(rs.next());pstmt = conn.prepareStatement("insert into pf values(?,?,?,?,?,?)");pstmt.setString(1, item.GetEmployeeID());pstmt.setString(2, item.GetEmployeeName());pstmt.setString(3, item.GetOnWorkTime());pstmt.setString(4, item.GetOffWorkTime());pstmt.setString(5, item.GetLeaveWorkTime());pstmt.setString(6, item.GetDescribe());pstmt.execute();}rs.close();stmt.close();pstmt.close();conn.close();} //删除相应工号的员工记录public void DeleteData( String strEmployeeID ) throws Exception {Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver" );String url = "jdbc:odbc:FA";conn = DriverManager.getConnection( url, "root", "admin" );stmt = conn.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE );String SQL = "delete from pf where 经手人='" + strEmployeeID + "'";stmt.execute( SQL ); //查找是否存在该员工的记录}}3.前台的设计关于前台的设计我们采用的是java语言当中的application小窗口图形界面的一个输入和输出,具体的设计见调试分析。

相关文档
最新文档