




已阅读5页,还剩31页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
家庭财务管理系统毕业论文 师范大学毕业设计论文论文题目财务管理系统所 在 系 xxxxx 姓 名 xxxx 专 业 xxxxxxx 班 级 xxxxxx 指导老师 xxxxx 2012年 5 月 20 日毕业设计论文写作指导须知毕业设计论文是教学过程中一个十分重要的环节是学生运用所学知识正确分析和解决实际问题的一个重要方面是我校培养应用型人才的要求指导教师应为具有讲师以上或具有硕士以上学位的有关专业人员经系审查同意后才能指导学生的毕业设计论文学生应以严肃认真实事求是的态度完成作业要独立思考自己动手完成不得抄袭或找人代笔毕业设计论文选题要符合专业培养目标的要求设计论文写作要做到论点明确论据充分说理透彻语言准确恰当并在规定的时间内完成答辩过程中学生要严肃认真文明礼貌谦虚谨慎认真回答答辩主持人委员提出的问题填报有关表格时应按项目要求逐项真实认真全面填写评审表学号姓名学制专业班级论文题目指导教师职称或职务指导教师评语成绩 指导教师签名 年 月 日系审查意见成绩 审查人签名 年 月 日学校终审意见成绩 签名 职称 年 月 日答 辩 情 况 记 录答辩题目答 辩 情 况正 确基本正确经提示回答不 正 确未 回 答财务管理系统此表格由主持答辩的同志填写正确为优秀基本正确为良好经提示回答为及格不正确不回答为不及格答辩委员会或小组评语成绩 答辩主持人签名 职称 年 月 日毕业论文审查不及格补审意见成绩 补审人签名 职称 年 月 日目 录第1章 绪论1141 bs模式介绍3142 java技术概述4143 javabean介绍4144 jsp技术介绍4145 hibernate技术介绍5146 容器tomcat应用服务器介绍5147 oracle数据库介绍6148 开发框架技术mvc715 系统开发理论介绍7151 系统规划阶段8152 系统分析阶段8153 系统设计阶段8154 系统实施阶段9155 系统运行和维护阶段916 运行环境9第2章 系统需求分析1021系统目标1022 系统可行性分析10221 技术可行性10222 经济可行性1023系统需求分析方法11231系统需求分析概述11232系统需求分析方法1224系统功能需求分析12第3章 系统总体设计1431 系统设计方法1432 系统架构1433 系统功能模块细分1634 系统数据库的设计17341 数据库相关理论17341 数据库分析1832 数据库概念结构设计1833 数据库逻辑结构设计2041 系统设计方法2342 系统模块设计23421 框架文件配置23422 系统主界面24431 基础数据管理界面26432 收支管理界面27433 系统管理界面29第五章 结 论34致 谢35参考文献37第1章 绪论11 课题来源21世纪的中国随着人们生活水平的提高个人家庭财富的不断增长人们迫切的需要进行家庭理财但是大部分家庭又不知道怎样去理财投资以保持家庭财富的持续稳定的增长其实家庭理财规划非但不神秘而且与每个人和每个人家庭都密切相关这种个人化的理财服务在20世纪八十年代已经在国际上比较发达的城市拥有成熟的市场理财师为客户进行的理财主要是根据客户的资产状况与风险偏好关注客户的需求与目标以帮助客户为核心理念采取一整套规范的模式向客户提供设计生活方方面面的的全面财务建议并调用储蓄保险股票债券基金信托等金融产品为客户寻找一个最适合的理财组合方式以确保其资产的保值与增值家庭理财并不是一个新鲜词简单地说就是开源节流管理好家庭的钱财想想看您是如何管理好自己的钱财的您家庭一定有些存款还有可能买卖股票债券还可能给自己和家人买了保险-其实在日常生活中不自觉的运用这各种理财方法因此开发一个家庭理财管理系统迎合了现代的家庭发展趋势对居民合理分配家庭财产起到重要意义一直以来人们使用传统人工的方式文件纸张记帐管理模式这种管理方式存在着许多缺点如效率低保密性差另外时间一长将产生大量的文件和数据这对于查找更新和维护都带来了不少的困难所以利用计算机实现财务信息的管理的自动化将势在必行今天我们使用计算机对家庭财务信息进行管理具有手工管理所无法比拟的优点例如检索迅速查找方便可靠性高存储量大保密性好寿命长成本低等这些优点能够极大地提高家庭财务管理的效率面对目前的实际状况迫切需要开发一个新系统来适应这一些工作12 系统现状及发展趋势家庭理财系统即family conduct financial transactions system它利用计算机应用技术使家庭理财逐步信息化从而形成由家庭成员与计算机共同构成服务于家庭的人机信息财务管理系统家庭理财系统在国内外很多地方使用已经相当的普遍国外的家庭理财管理系统发展的相对比较成熟比如他们系统里包含有股票的预测基金的分析等等在国内计算机使用盛行的当今社会家庭理财管理系统已基本替代了传统的手工记账理财的方法给消费者带来极大的方便但由于人们的生活水平越来越高收支种类越来越多家庭消费的内容日益丰富等现行的许多家庭理财管理系统已不能满足大家的需求许多功能还亟待完善与更新虽然国内的家庭理财管理系统功能较不完善但在我国科技迅速发展的今天其发展前景将十分令人期待尤其是在近几年伴随着计算机在社会中的高速普及家庭理财系统的使用范围逐步扩大从最早的简单记录家庭个人财务的收支情况到现在对财务的收支查询汇总报表分析预测等等巨大的市场需求也促使了很多公司加大了对家庭理财系统的研究当今社会人们的生活水平和文化素质普遍提高随着市场经济的快速发展观念的不断更新每个人的理财意识普遍增强特别是家庭理财意识得到很大发展人们对家庭各方面消费不仅仅只有进行记录和统计的愿望各种收入消费途径错综复杂如何使用户能更加方便的操作成为要求同时伴随精神和物质生活的提高人们购置和使用计算机的能力也在增强网络越来越发达一种新型网络家庭理财管理系统软件正等待出现家庭理财管理系统是一个为方便处理家庭财务的一个软件它的作用是更好的满足理财者对家庭财务管理的需要目前社会上普遍使用的家庭理财管理系统基本都是单击版的随着it技术的进步和计算机网络技术的发展以及家庭收支范围的扩大家庭理财管理系统将逐渐从传统的桌面管理向网络集成的方向发展从局部静态事后核算到全局动态实时的管理基于不同软硬件平台不同网络架构的各级财务管理子系统需要有机地协同工作因此基于internet的家庭理财管理系统必然成为未来家庭理财管理系统的发展趋势13 系统的开发目的和意义家庭理财管理系统是为满足当代家庭理财管理的需要而设计开发的一个财务管理系统它针对家庭理财的需要开发出一个能实现管理家庭财务收支以及统计分析等功能的实用型软件能够为每一个家庭的管理者提供充足的信息和快捷的查询手段大大方便家庭管理者合理科学有效的理财伴随着信息时代的到来信息的种类数量越来越多容量也越来越大在竞争越来越激烈的今天随着科学技术的不断提高计算机科学日渐成熟其强大的功能已为人们深刻认识它已进入人类社会的各个领域并发挥着越来越重要的作用而使用计算机对家庭财务进行管理已经成为一种趋势与传统的手工式家庭财务管理相比利用计算机软件对家庭财务实行管理具有检索迅速查找方便可行性高存储量大保密性好寿命长成本低等优点家庭理财管理系统正是在这种环境下应运而生其开发的整体任务是实现家庭财务管理的系统化规范化科学化从而达到有效管理家庭财务的目的因此开发这样一个系统在当今社会中是很有必要的14 系统开发工具与数据库介绍141 bs模式介绍伴随着internet的迅速发展计算机技术正在由基于csclient server模式的应用系统转变为基于bs模式的应用系统过去网络软件的开发都采用csclient模式在这种模式下主要的业务逻辑都集中于客户端程序因此必然导致以下问题 1 系统安装调试维护和升级困难由于客户端的硬件配置可能存在差异软件环能各不相同因此在安装时必须对每一个客户端分别进行配置同样在软件升级时也要对客户端分别处理 2 在整个系统中业务逻辑和用户界面都集中到了客户端必然会增加安全隐患 3 bs模式带来了巨大的好处开发成本及维护成本降低由于bs架构管理软件只安装在服务器端server上即应用程序在部署升级维护时只需要在服务器端进行配置就可以了网络管理人员只需要管理服务器就行了用户界面主要事务逻辑在服务器server端完全通过浏览器实现极少部分事务逻辑在前端browser实现所有的客户端只有浏览器网络管理人员只需要做硬件维护 4 良好的安全性能防火墙技术可以保证后台数据库的安全性所有的配置工作都集中在服务器端且所有客户端请求都是通过dbms来访问数据库从而大大减少了数据直接暴露的风险142 java技术概述java技术是sun公司推出的新的一代面向对象程序设计语言特别适合于internet应用程序开发java的产生与流行是当今internet发展的客观要求java是一门各方面性能都很好的编程语言它的基本特点是简单面向对象分布式解释的健壮的安全的结构中立的可移植的性能很优异的多线程的动态的特别适合在internet环境上开发的应用系统java技术不仅仅包括java语言它还有一系列的与之相应的开发技术如javabeanjsphibertatestruts等等143 javabean介绍用户可以使用javabean将功能处理值数据库访问和其他任何可以用java代码创造的对象进行打包并且其他的开发者可以通过内部的jsp页面servlet其他javabeanapplet程序或者应用来使用这些对象用户可以认为javabean提供了一种随时随地的复制和粘贴的功能而不用关心任何改变最初javabean的目的是为了将可以重复使用的软件代码打包标准特别是用与帮助厂家开发在综合开发环境ide下使用的java软件部件这些包括如grid控件用户可以将该部件拖放到开发环境中从此javabean就可以扩展为一个java web 应用的标准部件并且javabean部件框架已经扩展为企业版的 beanejb144 jsp技术介绍jsp的全称是java server pages它是sun推出的一种动态网页技术标准它在传统的静态页面文件htmlhtm中加入java程序片段和jsp标记就构成了jsp页面jsp具有以下的优点 1 将业务层与表示层分离使用jsp技术网络开发人员可充分使用6html来设计页面显示部分如字体颜色等并使用jsp指令或者java程序片段来生成网页上的动态内容 2 能够跨平台jsp支持绝大部分平台包括现在非常流行的linux系统应用非常广泛的apache服务器也提供了支持jsp的服务 3 组件的开发和使用很方便如asp的组件是由cvb等语言开发的并需要注册才能使用而jsp的组件是用java开发的可以直接使用 4 一次编写处处运行作为java开发平台的一部分jsp具有java所有优点包括write once run everywhere145 hibernate技术介绍hibernate是一个免费的开源java包它使得与关系数据库打交道变得十分轻松就像您的数据库中包含每天使用的普通java对象一样同时不必考虑如何把它们从神秘的数据库表中取出或放回到数据库表中它解放了您使您可以专注于应用程序的对象和功能而不必担心如何保存它们或稍后如何找到它们 hibernate不会对您造成妨碍也不会强迫您修改对象的行为方式它们不需要实现任何不可思议的接口以便能够持续存在惟一需要做的就是创建一份 xml映射文档告诉hibernate您希望能够保存在数据库中的类以及它们如何关联到该数据库中的表和列然后就可以要求它以对象的形式获取数据或者把对象保存为数据与其他解决方案相比它几乎已经很完美了运行时hibernate读取映射文档然后动态构建java类以便管理数据库与java之间的转换在hibernate中有一个简单而直观的api用于对数据库所表示的对象执行查询要修改这些对象一般情况下只需在程序中与它们进行交互然后告诉hibernate保存修改即可类似地创建新对象也很简单只需以常规方式创建它们然后告诉hibernate有关它们的信息这样就能在数据库中保存它们hibernate api学习起来很简单而且它与程序流的交互相当自然在适当的位置调用它就可以达成目的它带来了很多自动化和代码节省方面的好处所以花一点时间学习它是值得的而且还可以获得另一个好处即代码不用关心要使用的数据库种类否则的话甚至必须知道我所在的公司就曾有过在开发过程后期被迫更换数据库厂商的经历这会造成巨大的灾难但是借助于hibernate只需要简单地修改hibernate配置文件即可146 容器tomcat应用服务器介绍目前支持jsp的应用服务器是较多的tomcat是其中较为流行的一个web服务器被javaworld杂志的编辑选为2001年度最具创新的java产品可见其在业界的地位 tomcat是一个免费的开源的serlvet容器在tomcat中应用程序的部署很简单你只需将你的war放到tomcat的webapp目录下tomcat会自动检测到这个文件并将其解压你在浏览器中访问这个应用的jsp时通常第一次会很慢因为tomcat要将jsp转化为servlet文件然后编译编译以后访问将会很快tomcat也具有传统的web服务器的功能处理html页面但是与apache相比它的处理静态html的能力就不如apache我们可以将tomcat和apache集成到一块让apache处理静态html而tomcat处理jsp和servlettomcat是一个很好的工具不仅仅因为其免费功能强大更因为其开放性越来越受到人们的重视147 oracle数据库介绍oracle 是以高级结构化查询语言 sql 为基础的大型关系数据库通俗地讲它是用方便逻辑管理的语言操纵大量有规律数据的集合是目前最流行的bs体系结构的数据库之一oracle7x以来引入了共享sql和多线索服务器体系结构这减少了oracle的资源占用并增强了oracle的能力使之在低档软硬件平台上用较少的资源就可以支持更多的用户而在高档平台上可以支持成百上千个用户提供了基于角色 role 分工的安全保密管理在数据库管理功能完整性检查安全性一致性方面都有良好的表现提供了与第三代高级语言的接口软件pro系列能在cc等主语言中嵌入sql语句及过程化 plsql 语句对数据库中的数据进行操纵加上它有许多优秀的前台开发工具如 power buildsqlformsvisia basic 等可以快速开发生成基于客户端pc 平台的应用程序并具有良好的移植性提供了新的分布式数据库能力可通过网络较方便地读写远端数据库里的数据并有对称复制的技术oracle数据库在物理上是存储于硬盘的各种文件它是活动的可扩充的随着数据的添加和应用程序的增大而变化oracle数据库在逻辑上是由许多表空间构成主要分为系统表空间和非系统表空间非系统表空间内存储着各项应用的数据索引程序等相关信息我们准备上马一个较大的oracle应用系统时应该创建它所独占的表空间同时定义物理文件的存放路径和所占硬盘的大小物理上存放于网络的多个oracle数据库逻辑上可以看成一个单个的大数据库用户可以通过网络对异地数据库中的数据同时进行存取而服务器之间的协同处理对于工作站用户及应用程序而言是完全透明的开发人员无需关心网络的连接细节无需关心数据在网络接点中的具体分布情况也无需关心服务器之间的协调工作过程由网络相连的两个oracle数据库之间通过数据库链接 db-links 建立访问机制相当于一方以另一方的某用户远程登录所做的操作但oracle采用的一些高级管理方法如同义词 synonme 等使我们觉察不到这个过程似乎远端的数据就在本地数据库复制技术包括实时复制定时复制储存转发复制对复制的力度而言有整个数据库表的复制表中部分行的复制在复制的过程中有自动冲突检测和解决的手段148 开发框架技术mvc对于框架技术我们采用struts strutshibernate的整合其实任何一种框架都可以完成我们的项目但我们选择三种框架的组合是因为三种框架各有好处我们利用它们的优点来避免它们的缺点充分利用java技术在web的应用struts是应用比较广泛的一种表现层框架struts是一个为开发基于模型 model 视图 view 控制器 controller mvc 模式的应用架构的开源框架是利用servletjsp和custom tag library构建web应用的一项非常有用的技术由于struts能充分满足应用开发的需求简单易用敏捷迅速它使用服务层框架可以将javabeans从jspservlet中分离出来而使用表现层框架则可以将jsp中剩余的javabeans完全分离这部分javabeans主要负责显示相关信息一般是通过标签库taglib实现不同框架有不同自己的标签库struts是应用比较广泛的一种表现层框架15 系统开发理论介绍软件的生命周期指从提出软件产品开始直到该软件产品被淘汰的全过程信息系统在使用过程中随着其生存环境的变化要不断维护修改当它不再适应的时候就要被淘汰就要有新系统代替老系统这种周期循环称为信息系统的生命周期信息系统的生命周期可以分为系统规划系统分析系统设计系统实施系统运行和维护等五个阶段151 系统规划阶段系统规划阶段的任务是对各家庭理财的环境目标及现行系统的状况进行初步调查根据家庭理财目标和发展战略确定信息系统的发展战略对建设新系统的需求做出分析和预测同时考虑建设新系统所受的各种约束研究建设新系统的必要性和可能性根据需要与可能给出拟建系统的备选方案对这些方案进行可行性分析写出可行性分析报告可行性分析报告审议通过后将新系统建设方案及实施计划编写成系统设计任务书152 系统分析阶段系统分析阶段的任务是根据系统设计任务书所确定的范围对现行系统进行详细调查描述现行系统的业务流程指出现行系统的局限性和不足之处确定新系统的基本目标和逻辑功能要求即提出新系统的逻辑模型这个阶段又称为逻辑设计阶段他是整个系统建设的关键阶段也是信息系统建设与一般工程项目的重要区别所在该阶段的工作成果体现在系统说明书中这是系统建设的必备文件它既是给用户看的也是下一阶段的工作依据因此系统说明书既要通俗又要准确用户通过说明书可以了解未来系统的功能判断是不是其所要求的系统系统说明书一旦讨论通过就是系统设计的依据也是将来验收系统的依据153 系统设计阶段简单地讲系统分析阶段的任务是回答系统做什么的问题而系统设计阶段要回答的问题是怎么做该阶段的任务是根据系统说明书中规定的功能要求考虑实际条件具体设计实现逻辑模型的技术方案也即设计新系统的物理模型这个阶段又称为物理设计阶段可分为总体设计和详细设计两个阶段这个阶段的技术文档是系统设计说明书154 系统实施阶段系统实施阶段是将设计的系统付诸实施的阶段这一阶段的任务包括计算机等设备的购置安装和调试程序的编写和调试人员培训数据文件转换系统调试与转换等这个阶段的特点是几个互相联系互相制约的任务同时展开必须精心安排合理组织系统实施是按实施计划分阶段完成的每个阶段应写出实施进度报告系统测试之后写出系统测试分析报告155 系统运行和维护阶段系统投入运行后需要经常进行维护和评价记录系统运行的情况根据一定的规格对系统进行必要的修改评价系统的工作质量和经济效益16 运行环境硬件环境内存2g cup赛扬 24g 硬盘320g操作系统microsoft windows xp professional sp2软件环境数据库oracle10g开发工具myeclipse85第2章 系统需求分析21系统目标本系统要达到的目标有以下几点 验证用户和密码的正确性再登入以及修改密码和退出系统 保存每次输入的收支记录并提供两种查询方式种类法和编号法 整个收支记录库可以导出为文本文件以便做其它工作 能够提供一定的安全机制提供数据信息授权访问防止随意删改同时提供信息备份的服务22 系统可行性分析可行性研究的目的是用最小的代价在尽可能短的时间内确定问题是否能够解决从现在应用的技术方面管理者和用户的操作方式方面研究智能家庭理财系统的可行性和必要性智能家庭理财系统的实施将很大程度上提高现代家庭的理财效率使得现代家庭能够更加方便的对自己的财务进行个性化的管理221 技术可行性技术可行性研究的任务是从总体上鉴别和选择技术系统是研究现有的技术条件能否顺利完成开发工作硬软件配置能否满足开发的需求等等本系统的开发使用myeclipse 作为系统开发的开发环境它作为一种现代化的编程语言提供完善的指令控制语句类与对象的支持及丰富的数据类型给开发高性能系统提供了保障为开发满足客户要求的系统保证了代码的模块化要求而代码模块化的提高非常有利于以后对新系统的扩展与修改综上所述本系统为一个小型的家庭理财系统所耗费的资源非常的小现行的电脑无论是硬件还是软件都能够满足条件因此本系统在技术上是可行的222 经济可行性 进行软件开发项目成本的估算以及了解取得效益的评估确定要开发的项目是否值得投资开发这些即为经济可行性如今随着计算机的大量普及各种软件的开发成本越来越低价格也越来越底本系统也是这样开发成本较低只是需要一台配置一般的计算机该系统运行时占计算机的资源也不多但并不会因为开发成本低而造成系统功能性能的下降相反随着计算机技术的发展各种实用软件的性能日渐提高家庭理财管理系统廉价的开发成本却能够为居民带来相当大的实惠和方便主要表现在 1 本系统是一个拥有多种实用功能的家庭理财管理信息系统它集成了家庭成员管理收入管理支出管理密码管理等多种功能具有较强的实用性和方便性 2 本系统的运行可以大大提高居民管理财务的效率减少不必要的人力和物力 3 本系统还具有查询和统计功能能够查询到用户在一段特定时间内收入和支出的情况特别是支出情况有时往往会让用户在月底吓一跳大大超出预算还弄不清钱都花到哪里了有了家庭理财系统不仅使用户对口袋里钱的去向一目了然而且可以帮助用户渐渐感悟到一些心得摸清哪些花费是必要的哪些意外开支是可以避免的哪笔开支是可继续评估其必要性的 4 本系统的运行可以大大的提高家庭的工作效率并可以使敏感文档更加安全由此可以得出本系统在经济上是具有可行性的23系统需求分析方法231系统需求分析概述在软件工程中需求分析指的是在建立一个新的或改变一个现存的电脑系统时为描写新系统的目的范围和定义所要做的所有的工作需求分析的任务是通过详细调查现实世界要处理的对象充分了解原系统的工作概况明确用户的各种需求然后在此基础上确定新系统的功能它是软件工程中的一个关键过程在这个过程中系统分析员和软件工程师必须确定顾客的需要只有在确定了这些需要后他们才能够分析和寻求新系统的解决方法如果在需求分析时分析者们未能正确地认识到顾客的需要的话那么最后的软件实际上不可能达到顾客的需要或者软件无法在规定的时间里完工232系统需求分析方法在管理信息系统开发实践中系统分析人员使用了多种系统分析方法主要有结构化分析方法 structured analysis简称sa 面向数据结构的分析方法以及面向对象的分析方法等其中结构化分析方法自从20世纪70年代末提出以后由于其简单清晰易于学习掌握和使用的特点成为长期以来被广泛使用的分析方法结构化系统分析是指用一组标准的准则和工具从事分析工作即有组织有计划有规律地进行分析它是一种利用系统工程的思想和有关结构的概念自顶向下划分模块逐步求精的分析方法该方法把研究对象看成一个系统用分解和抽象这两个基本策略来控制系统的复杂性它有三个要点 1 分解和抽象 2 图表描述 3 模型转换结构化系统分析常用的工具有数据流程图 dfd 数据字典 dd 数据库存储结构规范化法数据立即存取图处理逻辑的表达方法 决策树判定表结构式语言 24系统功能需求分析家庭理财管理系统是典型的信息管理系统其开发功能主要包括通过计算机管理个人财务实现无纸化理财通过查询分析统计出各项数据分析出生活中的浪费和节约的地方通过强大的查询和索检高效的索检出数据提高办事效率本系统主要有以下功能 对家庭成员资料的管理及对使用权限的管理相关信息存在家庭成员信息表中普通用户可以对自己的密码进行修改系统管理员在密码修改功能上的基础上可以添加或删除成员 对理财项目可以进行编辑理财项目包括日常收入来源和支出类型相关信息存在收入来源表支出类型表活期账户信息表均可以实现添加删除修改功能 日常财务管理包括日常收入和日常支出即记下日常的收入和日常的支出相关信息存入收入信息表和支出信息表中均可以实现添加删除修改功能 理财分析实现分类查询即按类别查询收支明细而且可以看到收支的财务分析报告并可打印 数据维护包括数据库的备份数据库的导入出方便用户保存和早期查询第3章 系统总体设计31 系统设计方法系统设计是对整个管理系统功能进行分析并划分和构建系统功能模块模块化程序设计就是把一个大程序按一个人能理解的规模进行分解的一种方法模块化指的是把一个程序按功能分解成若干彼此具有一定独立性同时也具有一定联系的组成部分这些组成部分称为模块系统设计是本系统开发的重要阶段它直接影响到目标系统的质量是整个开发工作的核心系统设计阶段的主要任务是在系统分析提出的逻辑模型的基础上科学合理地进行物理模型设计本系统在设计过程中充分考虑了系统的稳健性适应性和效率性符合系统设计的原则32 系统架构通过对家庭理财功能的分析本系统分为系统登录界面系统主程序界面导出数据库界面导入数据库界面收支项目管理界面家庭成员管理界面日常收入管理界面日常支出管理界面查询明细界面系统结构设计图如下图31 系统结构图33 系统功能模块细分根据上述系统总体架构思想的分析可将系统分为以下六大部分 系统管理模块负责对用户和数据库进行管理 基础数据管理模块负责对收支项目和家庭成员进行管理 日常收支管理模块负责对日常收入和日常支出进行管理最后得到如图示系统功能模块图图32 系统功能模块图34 系统数据库的设计开发数据库应用系统大部分可分为数据库的分析设计和应用程序的分析设计两部分后台数据库的合理设计在本系统中占有十分重要的地位数据库设计的优劣将会直接影响系统的准确性效率及实现效果合理的设计能提高数据存储效率保证数据的完整和一致341 数据库相关理论在数据库应用系统开发之前对开发数据库的基本概念应当了解对数据库的结构开发数据库应用程序的步骤开发体系及方法都应当有相当清晰的了解和认识数据库应用系统开发的目标是建立一个满足用户长期需求的产品开发的主要过程为理解用户的需求然后把它们转变为有效的数据库设计把设计转变为实际的数据库并且这些数据库带有功能完备高效能的应用数据库技术在计算机软件领域研究中一直是非常重要的主题产生于60年代30多年来数据库技术得到了迅速发展并已形成较为完整的理论体系和一大批实用系统数据库数据库由dbms数据库管理系统处理dbms则由开发人员和用户通过应用程序直接或间接地使用它主要包括四个要素用户数据元数据索引和应用元数据用户数据目前大多数主流数据库管理系统把用户数据表示为关系现在把关系看作数据表表的列包含域或属性表的行包含对应业务环境中的实体的记录并非所有的关系都同样符合要求有些关系比其它关系更结构化一些一个用以产生良好结构关系的过程称作规范化元数据数据库是自描述的这就意味着它自身包含了它的结构的描述这种结构的描述称作元数据因为dbms产品是用来存储和操纵表的所以大多数产品把元数据以表的形式存储有时称作系统表这些系统表存储了数据库中表的情况指出每一个表中有多少列那一列是主关键字每一列的数据类型的描述它也存储索引关键字规则和数据库结构的其他部分在表中存储元数据不仅对dbms是有效的对用户也是方便的因为他们可以使用与查询用户数据同样的查询工具来查询元数据索引第三种类型的数据改进了数据库的性能和可访问性这种数据经常称作开销数据尽管有时也采用其他类型的数据结构如链表但它主要还是索引索引可以用来排序和快速访问数据应用元数据存储在数据库中的第四种数据是应用元数据它用来存储用户窗体报表查询和其他形式的查询组件并非所有的dbms都支持应用组件支持组件的dbms也不一定把全部组件的结构作为应用元数据存储在数据库中然而大多数现代的dbms产品存储这种数据作为数据库的一部分一般来说数据库开发人员和用户都不直接访问应用元数据相反他们通过dbms中的工具来处理这些数据341 数据库分析根据以上分析设计出下列数据项和数据结构成员信息编号称呼姓名密码权限收入项目信息编号收入来源支出项目信息编号支出类型日常收入信息编号日期方式金额项目来源人员备注日常支出信息编号日期方式金额项目去向人员备注32 数据库概念结构设计得到上面的数据项和数据结构后即可设计满足用户需求的各种实体以及它们之间的关系根据上述设计规划出以下各个实体及其e-r图图33 成员信息图图34收入支出项目图图35 日常收入信息图综合以上e-r模型得到整个系统的e-r关系图如下示图36 e-r关系图33 数据库逻辑结构设计系统模型的逻辑结构设计的任务是把概念结构设计好的基本的e-r图转换为支持关系模型的dbms相符合的逻辑结构家庭理财管理系统数据库各表具体定义如下表31 用户信息表字段名类型大小是否为空主键编号int4y是密码int4y否表32 成员信息表字段名类型大小是否为空主键姓名nvarchar50y否称呼nvarchar50y否密码int8y否权限int2y否编号int4n是表33 收入项目信息表字段名类型大小是否为空主键编号int10n是收入来源nvarchar50y否表34 支出项目信息表字段名类型大小是否为空主键编号int10n是支出类型nvarchar50y否表35 收入信息表字段名类型大小是否为空主键日期nvarchar50y否方式nvarchar50y否金额money8y否项目nvarchar50y否来源nvarchar50y否人员nvarchar50y否备注ntext16y否keyint4n是表36 支出信息表字段名类型大小是否为空主键日期nvarchar50y否方式nvarchar50y否金额money8y否项目nvarchar50y否去向nvarchar50y否人员nvarchar50y否备注ntext16y否keyint4n是第4章 系统设计和实现41 系统设计方法系统设计是对整个管理系统功能进行分析并划分和构建系统功能模块模块化程序设计就是把一个大程序按一个人能理解的规模进行分解的一种方法模块化指的是把一个程序按功能分解成若干彼此具有一定独立性同时也具有一定联系的组成部分这些组成部分称为模块系统设计是本系统开发的重要阶段它直接影响到目标系统的质量是整个开发工作的核心系统设计阶段的主要任务是在系统分析提出的逻辑模型的基础上科学合理地进行物理模型设计本系统在设计过程中充分考虑了系统的稳健性适应性和效率性符合系统设计的原则42 系统模块设计421 框架文件配置springhibernate的配置sprintstruts的配置在webxml中添加如下配置422 系统主界面用户进入系统时要输入正确的用户名和密码系统从数据库用户表中检索是否有相对应的数据信息若输入正确则进入主界面否则提示错误需重新输入选择取消退出登陆系统若连续三次输入的用户名和密码都无法与数据库中的数据匹配则强制推出系统模块流程图如图41所示图41 登录模块流程图登陆窗体如图42所示图42 登录窗体输入正确的用户名和密码登录进入系统主界面如下图示图43 系统主界面431 基础数据管理界面收支项目管理界面如图所示图44成员管理界面如图所示图45432 收支管理界面日常收入界面如图所示图46日常支出界面如图所示图47433 系统管理界面角色管理界面如图所示图48分页代码 会话判断userinfo user userinfo requestget sysconstantskey_user_info if user null respondseterrormsg 登录超时请重新登录 return userappsettings settings userappsettings requestget sysconstantsuser_app_settings if settings null 防止session过期得到空值settings new userappsettings 分页设置string pagenum string requestget pagenum int numberperpage settingsgetprepagenum int currentpageif pagenum null currentpage 1 else currentpage integerparseint pagenum pagebean pagebean nullpagebean outputdaogetalloutputinfo if pagebean null outputlist pagebeangetdisplist intcurr pagebeangetcurrentpage int nextpage pagebeangetcurrentpage 1intpreviouspage pagebeangetcurrentpage - 1inttotalpages pagebeangettotalpages responseadd nextpage nextpage responseadd previouspage previouspage responseadd totalpages totalpages responseadd pagebean pagebean dao类public pagebean getalloutputinfo pagebean pagebean nullstring listhql from output where 1 1 and autosavestatus 1 list diarylist new arraylist int totalcount this querytotalcount list outputlist thisqueryforlist listhql null if outputlist null outputlistsize 0 outputlistadd outputlistget 0 else outputlistadd new diarytable date pagebean new pagebean totalcount numberperpage currentpage pagebeansetdisplist diarylist return pagebean 查找条数public int querytotalcount message msg int totalcount 0session session gsgetsession transaction ta nulltry ta sessionbegintransaction string sqlstr select count from output where msg query query sessioncreatequery sqlstr querysetentity 0 msg totalcount integerparseint queryuniqueresult tostring tacommit catch exception e tarollback throw new myexception 查找所有条数失败e finally sessionclose return totalcount 页面显示代码 table width 98 border 0 align center tr height 30 td align right logicgreaterthan value 1 name pagebean property currentpage a href requestgetcontextpath managequeryoutputdopagenum 1 onclick 第一页 nbsp a href path managequeryoutputdopagenum beanwrite name previouspage onclick 上一页 logicgreaterthan nbspnbsp 第 beanwrite name pagebean property currentpage 页共 beanwrite name pagebean property totalpages 页 nbspnbsp logiclessthan value requestgetattribute totalpages tostring name pagebean property currentpage a href path managequeryoutputdopagenum beanwrite name nextpage onclick 下一页 nbsp a href path managequeryoutputdopagenum beanwrite name pagebean property totalpages onclick 最后一页 logiclessthan nbspnbspnbspnbsp 第五章 结 论经过两个多月的努力我们完成了毕业设计家庭财务管理系统以前我们只知道学习书本的知识以及一些基本电脑知识而没有注重开发一些应用性软件并不知道自己处于什么样的水平阶段通过这次毕业设计我们发现在工具和语言使用方面我们还存在诸多不便另外由于我们从没有开发过类似软件的经验以及时间的仓促还有在技术与设计上的不足该软件还存在着一些技术和功能划分上的不足和缺憾本系统的扩展性很强可根据不同用户的需要增加其他的功能模块当然由于技术和语言使用方面存在一些不足所以本管理系统在功能完善上有待进一步的划分和制作首先由于数据库原理的某些方面的细节掌握不够扎实导致设计过程中的很多变动其次对于本次设计由于时间自身开发水平及其它原因对于图形间的比较没有能够实现这是自己的一大遗憾通过这段时间的毕业设计学到了很多东西不仅把以前所学的很多知识充分利用上了还要我学会使用了编程语言和数据库开发技术初步了解了jsp强大的动态交互网络编程开发能力对jsp网页设计软件有了更为深刻的了解和熟练的应用我体会到了软件开发不仅是编程它需要方方面面的考虑同时也必须具备比较全面的知识就像我们生活中的第一件事都需要有始有终认真对待我们在虚心听取和接受老师和同学们的意见和建议的同时会更加努力将其加以完善并且提高自身知识水平这并不是毕业设计的结束更不是人生在学习生涯中的结束
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 8《我们受特殊保护》第二课时(教学设计)部编版道德与法治六年级上册
- 高中信息技术粤教版选修4教学设计-4.3.4 创建“密码验证”窗体-
- 第四节 现代通信教学设计-2025-2026学年初中物理鲁科版五四学制九年级下册-鲁科版五四学制2012
- 2025年中考数学总复习《等腰三角形》专项检测卷(附答案)
- 2.2.2生物对环境的适应和影响说课稿-2024-2025学年苏科版生物七年级上册
- 2025年全国育婴师职业技能鉴定中级考试题库(含答案)
- 2025年高考数学试题分类汇编:平面向量与复数(试卷+解析)
- 2025年山东省泰安市中考生物试题及答案
- 小班师德师风题目及答案
- 《2025企业员工聘用劳务合同》
- 迈瑞注射泵的操作流程
- 数据共享保密协议书
- 空调系统故障应急预案
- 手术室安全知识
- DL-T 5876-2024 水工沥青混凝土应用酸性骨料技术规范
- 运动解剖学课件完整版
- 骨科术后下肢肿胀护理
- 《套期保值会计》课件
- Unit 1 This is me reading I 教学设计2024-2025学年译林版英语七年级上册
- 河南省南阳市2023-2024学年小升初语文试卷(含答案)
- 2024住院患者静脉血栓栓塞症预防护理与管理专家共识要点(全文)
评论
0/150
提交评论