1、Web家庭收支管理系统942020年5月29日文档仅供参考西 南 交 通 大 学本科毕业设计(论文)Web家庭收支信息管理系统年 级: 级学 号: 5608姓 名:刘进位专 业:计算机软件指导老师:黄文培 6月院 系 软件学院 专 业 计算机软件 学 号 5608 姓 名 刘进位 题 目 Web家庭收支信息管理系统 指导教师评 语 指导教师 (签章)评 阅 人评 语 评 阅 人 (签章)成 绩 答辩委员会主任 (签章)年 月 日毕 业 设 计 任 务 书班级 软计01班 姓名 刘进位 学号 5608 专业 计算机软件 发 题 日 期: 3月 3 日 完 成 日 期: 6月 12 日题 目 We
2、b家庭收支信息管理系统 题目类型: 工程设计 科学实验 软件开发 理论研究 综合应用一、 设计任务及要求 经过调研城镇家庭基本收支科目及财务管理需求,基于.NET或Java开发平台完成一个B/S架构的家庭收支管理软件开发。系统采用基于Structs和Hibernate的MVC技术开发路线,完成一个涵盖现金、储蓄卡、信用卡等支出的财务管理系统。经过系统内的统计、分析算法,达到全面挖掘家庭收支不合理的目的。本系统开发的重点是基于B/S架构实现一个收支条目可动态修改,具有较强数据分析、统计的财务管理软件,系统需要实现的功能包括:储蓄卡、信用卡的账号、资金管理;用户登录、密码管理;消费、支出科目的添加
3、、删除管理;消费及收入统计、分析;家庭收入、支出的统计报表(月、季度、年)生成;家庭收入、支出趋势分析及趋势线生成等。 二、 应完成的硬件或软件实验1、数据库(SQL SERVER、MySQL等)安装、配置及数据库编程实验 2、基于Java Script、JSP、ASP等的动态网页设计与实验 3、基于Structs和Hibernate的MVC编程实验 三、 应交出的设计文件及实物(包括设计论文、程序清单或磁盘、实验装置或产品等) 1、系统源程序及安装 2、毕业设计论文、程序光盘 四、 指导教师提供的设计资料 1、家庭财务管理的基本功能要求 2、基于Structs和Hibernate的基本编程资
4、料 五、 要求学生搜集的技术资料(指出搜集资料的技术领域) 1、基于Java或.NET平台的MVC实现模式及框架 2、数据库编程基本资料 六、 设计进度安排 (共16周)第一部分 收集、整理系统开发的工具与资料,熟悉Web应用编程 ( 4周)第二部分 调研家庭财务管理的实际需求,完成系统功能和总体设计 ( 2周)第三部分 完成系统的详细设计、编码和测试 ( 7周)第四部分 整理开发文档、论文 ( 2周)评阅及答辩 论文答辩 ( 1周)指导教师: 年 月 日室主任审查意见:审 批 人: 年 月 日注:设计任务书审查合格后,发到学生手上。西南交通大学软件学院 制摘 要 我们已经走过了21世纪的前十
5、年,这十年科学技术的发展速度已经超越了人们的想象,随着科学技术的发展,计算机技术也得到了飞速的发展,计算机技术的应用在各行各业也得到了广泛的应用。网络在短短几年的时间,迅速走进千万人家,人们的生活随着网络的发展也逐渐进入信息化时代。而家庭收支信息随着时代的发展也越来越多元化,因此,对家庭收支信息进行信息化管理,让人们从传统的手动记账方式彻底解脱,使她们有更多的时间来获取信息、了解信息、掌握信息,是人们生活的必然趋势。为了适应广大家庭用户的需求,全面提高家庭收支信息管理效率及质量,在Myeclipse7.0开发环境中,使用JSP、SQL 数据库和Struts开发了Web家庭收支信息管理系统,本系
6、统适用于各类中小型家庭收支信息的管理,是人们日常生活的助手。按照信息管理系统开发的步骤,以中小型家庭收支信息的相关资料为背景,设计和开发的收支信息管理系统。针对中小型家庭收支信息管理系统的业务需求和管理特点,设计了银行卡管理、资金管理、日常收支信息录入,收支信息报表等模块。包括了收支信息管理的主要业务,实现对收支的信息化管理,以及卡号资金等的管理。使收支信息管理更加规范化、科学化。收支信息管理系统能够在计算机上灵活、方便地管理家庭的收支信息,从而大大的提高了处理速率和服务质量。系统开发从用户本身出发,各个模块的设计和实现,都是按照一定的要求,科学、合理地进行分析、设计,从而使系统能满足中小型家
7、庭对收支信息的管理,并为用户提供更加方便快捷的服务。关键词:MyEclipse7.0;JSP;Struts;Web家庭收支信息管理系统AbstractWe have gone through the first decade of the 21st century, this decade the pace of development of science and technology has gone beyond peoples imagination, with the development of science and technology, computer technology
8、 has made rapid development in computer technology applications in all walks of industry has also been widely used. The Family Income and Expenditure Information With the development of more and more diversified, therefore, information on family income and expenditure management information so that
9、people from the traditional method of manual bookkeeping completely free, giving them more time to get information, understanding information, access to information, is the inevitable trend of peoples lives.In order to adapt to the family needs of users, improve family income and expenditure informa
10、tion management efficiency and quality, in Myeclipse7.0 development environment, use the JSP, SQL database and Struts develop the Web family income and expenditure management information system, this system is applicable to all kinds of small family income and expenditure of information management,
11、the Peoples Daily life is good assistant.According to the management information system development steps, to small and medium family income and expenditure information for the background information, design and development of information management system of payments, in view of the small and mediu
12、m-sized family income and expenditure management information system of management and business needs, design the bank management, fund management, daily expenses information recorded, balance module information report, including the balance of the main business information management, on balance, an
13、d the information management of funds management card. Make payments information management standardized, scientific.Expenditure management information system can be flexibly and conveniently on the computer management of family expenses information, thus greatly improve the processing speed and qua
14、lity of service. Systems development starting from the user,each module design and implementation, according to certain request, scientific and reasonable analysis, design, thus system can satisfy the small family expenses for information management, and for the user to provide a more convenient ser
15、vices.Key words: MyEclipse7.0, The JSP, Struts, Web family income and expenditure management information system目 录第一章 绪论11.1 选题背景及意义11.2 家庭收支信息管理系统的现状及分析11.3 研究主要内容和方法21.4 系统开发及运行环境21.4.1 系统开发工具21.4.2 服务器端21.4.3 客户端31.5 本章小结3第二章 系统开发的相关技术42.1 JSP技术42.2 Struts框架42.2.1 MVC框架简介42.2.2 Struts简介42.2.3 Str
16、uts的MVC构架52.3 Hibernate技术52.3.1 Hibernate的介绍62.3.2 Hibernate的特性62.3.3 Hibernate的主要组成62.3.4 Hibernate的配置72.3.5 Struts与Hibernate框架的结合72.4 SQL Sever 82.5 本章小结9第三章 需求分析与功能设计103.1 系统总体需求103.2 系统功能划分103.3 系统子功能定义113.2.1 登录注册113.2.2 卡号管理113.2.3 资金管理113.2.4 日常收支123.2.5 统计报表123.2.6 趋势图线133.2.7 个人信息133.4本章小结1
17、3第四章 系统设计154.1 系统目标154.1.1 系统架构设计154.1.2 系统流程图164.2 数据库设计164.2.1 数据概念设计174.2.2 数据逻辑结构设计204.2.3 创立数据库及数据表204.3 系统详细功能设计234.3.1 登录注册功能244.3.2 银行卡管理功能244.3.3 资金管理功能264.3.4 收支信息管理功能264.3.5 统计报表功能284.3.6 统计图线功能304.3.7 个人信息管理功能334.4 本章小结34第五章 系统实现355.1 数据库访问355.1.1 配置数据库连接355.1.2 数据库访问355.2 系统功能实现365.2.1
18、注册登录功能365.2.2 卡号信息管理375.2.3 资金信息管理395.2.4 日常收支记录405.2.5 收支信息报表425.2.6 收支信息趋势图线435.2.7 用户个人信息管理455.3系统测试475.3.1 收支信息管理测试475.3.2 收支信息趋势图线测试48结论51致谢53参考文献54第一章 绪论1.1 选题背景及意义随着现代信息技术的飞速发展,人类社会正从工业时代阔步迈向信息时代,人们越来越重视信息技术对传统产业的改造以及对信息资源的开发和利用。信息化是由工业社会向信息社会演化的动态过程,信息化水平的高低已成为衡量一个国家、一个地区现代化水平和综合国力的重要标志。大到国家
19、的科技发展,小到人们的日常生活,都随之迈上了信息化的新台阶,家庭收支信息管理的信息化,网络化,自动化也逐渐代替传统的手动纸张记账模式,如何更好地利用网络化,信息化的资源为家庭收支信息提供高效服务,如何积极创新,变传统服务模式为更能满足用户需要的网络环境下的信息服务模式,是一个急需解决的问题。长期以来,家庭收支信息的管理都是依赖人工进行的。人们使用传统的人工方式管理收支信息,手动记账,而且没有任何统计功能。而且有很多家庭因为日常收支类型的繁琐,甚至没有对小账目进行任何的记录。记录日常收支信息的家庭,需要把每一笔收支信息手动记录到账本上,这样既浪费时间,又得不到方便的统计信息。因此一个方便快捷的收
20、支信息管理系统将给家庭带来高效的管理能力。有了收支管理系统,人们能够随时随地经过网络登录到系统,对自己的日常消费进行记录,并经过系统的统计功能对自己的日常消费有清晰的理解,能从中提高自己对消费的管理效率。1.2 家庭收支信息管理系统的现状及分析虽然信息技术发展飞快,网络早已遍布千万人家,可是Web家庭收支信息管理系统的发展还处于初级阶段,现有的家庭收支管理系统,大多数都是基于C/S架构的,人们使用它,必须得到相应的安装软件,把系统装在自己的电脑中才能使用。在网络中,很少发现有基于B/S架构的家庭收支信息管理。 从 之后,网络迅速走进人们的生活,传统的C/S模式的家庭收支信息管理系统也逐渐出现在
21、眼前,它们从单一的记录日常信息逐渐发展为能够生成统计报表,把日常信息按各种类型统计出来,使用户能够清楚的看到家庭的不同类型的收支信息的统计情况。网络型的收支管理系统当前很少有人开发,因为人们还没有重视家庭收支信息的管理,可是随着信息化的发展,系统随着网络走进人们的生活是必然的趋势。现有的家庭收支信息管理,大部分只有日常记账和报表统计这两种功能,而对于家庭的储蓄状况,以及银行卡信息,家庭的资金管理等都没有涉及,但这些方面也是家庭财务信息的重要管理分支,和收支信息有着密切的联系,只有把这些信息都加入系统的管理中,才能对家庭的收支信息进行更加高效的管理。随着社会的信息化水平的提高,家庭收支信息管理系
22、统的设计将会走上网络化建设的道路。随着应用的深入和人们需求的提高,将从C/S服务器模式转向B/S服务器模式。家庭收支信息管理系统也将提供更加深入的服务,信息管理也会更加多样化,除具备基本功能外,还会具有各种辅助功能等。1.3 研究主要内容和方法Web家庭收支信息管理系统采用B/S服务器模式,为了提高工作效率和服务质量,本文针对用户对于家庭收支信息管理的特点和要求,设计了一个基于Web的管理系统,可满足大多数用户对于家庭收支信息管理要求。要求系统界面友好简捷,操作方便,能完成银行卡信息管理,资金信息管理,日常收支信息的管理,收支信息报表的生成,收支信息图线的生成,用户个人信息的管理。开发本系统的
23、总体任务是实现家庭收支信息管理的信息化,帮助用户更好更高效地完成收支信息的管理。 综合各方面的考虑系统采用Struts和Hibernate框架、SQL Sever 等技术开发。采用B/S 体系结构,SQL Sever 作为数据库服务器,使用Java技术,Struts框架进行网络应用程序的开发。相比JSP具有强大的优势, Struts经过将Servlet、JSP标签库和信息资源等技术整合到一个统一的框架中,开发人员利用Struts开发时不需要进行底层编码就能够实现MVC模式,大大简化了MVC的开发,从而提升了开发效率。Struts开发的系统层次结构十分清晰,可维护性大大增强。1.4 系统开发及运
24、行环境1.4.1 系统开发工具开发环境:MyEclipse的Struts和Hibernate框架结合开发的环境;开发语言:Java;后台数据库:SQL Sever ;运行平台:Windows XP。1.4.2 服务器端操作系统:Windows XP;Web服务器端:Tomcat服务器;数据库服务器:SQL Sever ;浏览器:IE 7.0;1.4.3 客户端浏览器:Internet Explorer 7.0;分辨率:最佳效果1280*800像素1.5 本章小结 本节对系统的背景以及研究方法等作了简单的描述,并对系统的开发工具等作了讲解,接下来将对毕业设计使用的技术作详细的介绍。 第二章 系统
25、开发的相关技术2.1 JSP技术JSP技术是由Sun公司提出、多个IT公司参与合作建立的一种动态网页开发技术标准。JSP规范是Web服务器,中间件应用服务器、交易系统以及软件开发工具厂商间广发合作的成果,该技术为创立显示动态生成的内容的Web页面提供了一个简洁而快速的方法。2.2 Struts框架Struts能够大大简化MVC的应用开发,特别是对于复杂的大型应用软件开发。2.2.1 MVC框架简介 MVC框架既是模型-视图-控制器(Model-View-Controller)设计模式。其中M代表Model,V代表View,C代表Controller。MVC的核心思想是讲一个应用程序的数据业务处
26、理功能(模型)、表示功能(视图)、控制空能(控制层)在3个不同的部分上实现。MVC的目的是增加代码的复用性,减少数据描述和应用操作的可耦合度,并提高代码的可读性。同时,也能够使软件的可维护性,可扩展性、可修复性,灵活性以及封装性大大提高。MVC框架图如下:图 2.1MVC框架2.2.2 Struts简介Struts是一个简化的MVC开发的非常优秀的Web应用框架,主要采用JSP、Servlet等技术实现,应用框架为开发者提供可重用的基础架构,为业务逻辑开发者提供支持,减少底层代码工作量,从而减少Web应用系统的开发时间,提高开发效率。2.2.3 Struts的MVC构架Struts的应用框架主
27、要包括四个部分。1 模型(Model)。模型能够分为两个部分:系统内部状态和业务逻辑实现。在Struts中Model实质上式一个Action类。2 视图(View)。View由与控制器Servlet配合工作的JSP定制的标签构成。可简化应用系统的界面开发。3 控制器(Controller)。本质上是一个Servlet,将客户端请求转发到相应的Action类,完成映射过程。4 XML文件解析工具包。Struts用XML来描述如何自动产生一些JavaBena的属性,另外Struts还能够利用XML实现多国语言支持等功能。Struts组建在MVC框架下的位置如图2.2所示:图2.2 Struts在M
28、VC框架中的位置2.3 Hibernate技术大型应用软件开发项目大都和大型数据库技术密切相关。可是熟练使用和高效使用JDBC进行J2EE/JSP应用开发却不是每一个开发者所能轻易做到的,同时使用JDBC需要开发者了解非常多的底层数据信息,项目较大时,开发者的工作压力非常大,工作量也非常多,重复性工作甚至占到了代码量的一半以上。Hibernate框架的出现很大程度上改变了这种局面。2.3.1 Hibernate的介绍Hibernate是一个开源的对象/关系(Object/Relational Mapping)映射框架的解决方案,简称ORM。其对JDBC进行了非常轻量级的对象封装,使得Java程
29、序员能够随心所欲地使用面向对象编程思想来操纵数据库。简单的说就是将Java中的对象与对象关系映射至关系型数据库中的场合能够采用Hibernate。即能够在Java客户端程序实用,也能够在JSP的Web应用中使用。2.3.2 Hibernate的特性Hibernate是一个轻量级框架,核心的类数量很少。学习起来上手比较快,学习成本和代价很小。读者初学时完全能够在一个小时内安装、配置完成好系统,并开发出第一个Hibernate程序。它大大减少了编码量,Hibernate把开发者从繁重的代码工作中解放出来。基于Hibernate开发的各种应用系统可维护性好,系统修改十分方便。Hibernate是一种
30、非强迫性解决方案。开发者在写业务逻辑与持续性类是,不会被要求遵循许多Hibernate特定的规则和设计模式。这样Hibernate能够与大多数新的和现有的应用平稳集成,而不需要对应用的其它部分造成破坏性修改。Hibernate致力于成为Java管理持续性数据问题的一种全面解决方案。强调协调与关系数据库的交互,强调开发者的重心应该放在业务问题上而不是技术问题。2.3.3 Hibernate的主要组成Hibernate主要包括:POJO对象,即Value Object;Hibernate映射文件,Value Object位于ORM对象层,有映射文件将对象与关系型数据相关联;Hibernate配置文
31、件,XML配置文件提供了更易读的结构和更强的配置能力,能够直接对映射文件加以配置文件。整个Hibernate的主框架经过持久化层链接应用层(Application)和Hibernate框架的交互,经过Hibernate框架,应用程序能够把数据库作为一个对象使用,这比直接对数据库的操作简单方便许多,对应于单纯的MVC模式,Hibernate体现了其面向对象的精髓,将数据库对象化,把数据库数据属性化,并为每个属性生成对应的get和set方法,应用程序要对数据库操作,只需对持久化类的方法进行操作就能够达到效果,真个框架图如图2.3所示:图 2.3 Hibernate主框架图2.3.4 Hiberna
32、te的配置Hibernate的配置主要是用来建立SessionFactory的,经过Configuration类来提供这些配置细节,取得这些配置信息有4种方法:(1) 传递java.util.Property到Configuration.setPropertier()方法。(2) classpath目录下中提供hibernate.properties文件。(3) 经过java-D property=value的方式来指定使用的系统属性。(4) 在hibernate.cfg.xml文件中使用。2.3.5 Struts与Hibernate框架的结合Hibernate与Struts结合后,对于主要工
33、作在服务器端表示层的Struts框架来说,仅仅是Action与业务逻辑之间的交互有所改变,而其它入JSP、Action转发等都无需变动。Hibernate框架的VO本质是PO(持久化对象)的前身,也就是说,在Hibernate框架中,VO(value object)就足以代表一条数据库中的记录。Hibernate框架之因此是优秀的框架,就在于它所使用持久化的PO,其本身就是一个简单的Java类的VO(value object)。这样的好处是在没有继承等关系的纯粹的POJO的情况下,直接能够在业务逻辑层和服务器表示层被使用,不涉及高耦合度问题。因此,在业务逻辑层中只要对VO进行操作,然后返回就能
34、够了。VO在Struts框架和Hibernate框架中的工作模式如下图:图 2.4 VO的工作模式2.4 SQL Sever Web家庭收支信息管理系统是一个中小型的信息管理数据库系统,在此次设计中选择SQL Server数据库进行开发。Microsoft SQL Server是一种关系型数据库管理系统。关系模型是当前最受欢迎的数据存储和数据检索模型。所有的数据处理都涉及存储和检索数据的操作, Microsoft SQL Server是作为一个组织内部的全部数据的中心存储器来设计的。SQL Server 是Microsoft公司推出的基于Client/Server模式的新一代大型关系数据库管理
35、系统。它功能强大、操作简便,广泛应用于数据库后台系统。SQL Server 代表着下一代Microsoft.NET Enterprise Servers(企业分布式服务器)数据库的发展趋势。它在电子商务、数据仓库和数据库解决方案等应用中起着重要的核心作用。SQL触发器,是一种特殊的存储过程,它在插入,删除或修改特定表中的数据时触发执行,它比数据库本身标准的功能有更精细和更复杂的数据控制能力。与ACCESS数据库相比,SQL Server 数据库的规模更大,它能够将用户的数据存储在多个服务器上,并利用复制技术跨越多个服务器进行分布式处理,实现真正意义上的分布式数据库。SQL Server 的安全
36、性更好,它能够对登录用户的身份进行认证,并对用户的操作权限进行控制。SQL Server 的故障恢复功能更强,它提供了强大的数据库备份和恢复功能,当故障发生时,能根据备份和日志迅速恢复到某一正确时刻。同时,SQL Server 还提供了更好的并发控制功能以及大量的监控和管理数据库系统的工具。综上所述,SQL Server 无论是从规模上还是从功能上都更优于ACCESS,更适合于作为投入实际运营的较大规模的网站的后台数据库。区别于FoxPro、Access小型数据库,SQL Server是一个功能完备的数据库管理系统。它包括支持开发的引擎、标准的SQL语言、扩展的特性(如复制、OLAP、分析)等
37、功能,而像存储过程、触发器等特性,也是大型数据库才拥有的。2.5 本章小结本节对设计使用的主要技术进行了详细的介绍,包括Struts框架技术的介绍,框架体系的描述以及Hibernate框架的讲解,为后续的设计做好铺垫。第三章 需求分析与功能设计3.1 系统总体需求在12世纪信息技术飞速发展的背景下,人们生活的多元化的趋势下,传统的手工管理收支信息已经跟不上时代的步伐,人们需要在日趋复杂的消费环境以及收入多元化得环境下对家庭的收支信息进行高效的管理,因此Web家庭收支信息管理系统将为千万户家庭提供新时代,新技术,新方式的管理方式。系统所需的功能主要更具家庭的财务信息的收入支出进行系统的划分。系统
38、主要分为六个子功能:卡号管理,包括对储蓄卡的增加、修改、删除的操作,对信用卡的增加、修改、删除操作,其中修改主要针对卡号,卡的账号名,卡号的金额进行操作;资金管理,对家庭的银行存款,现金进行管理,对家庭的债务信息管理;收支信息的管理,对收支信息进行增加、修改、删除操作;收支报表的生成,对收支信息进行日、月、年等的分类统计;收支图线的生成,根据数据库的收支信息得到相应的图;个人信息管理,查看、修改用户信息,修改用户密码。3.2 系统功能划分 系统功能主要分为六个子功能,总体的功能结构图如下:图 3.1 系统整体功能结构图3.3 系统子功能定义Web家庭收支信息管理系统主要针对大部分家庭对于日常收
39、支信息的管理,根据上面的整体功能结构图,系统主要需要实现依稀功能。3.2.1 登录注册新用户在这里获取自己的登录信息,并进行登录:1 用户注册:用户填写相关的注册信息,获取用户名和密码用于登录系统,用户信息有必填和选填等;2 用户登录:用户用自己注册成功的用户名和密码登录系统;3.2.2 卡号管理卡号管理子功能主要实现两个子功能,储蓄卡的管理和信用卡的管理:1 储蓄卡的管理:用户经过这个功能能够实现添加卡号功能,修改卡号信息,删除卡号; (1) 添加储蓄卡卡号:用户能添加银行卡号信息,包括对卡号,卡上余额,卡的账户名的填写操作。 (2) 修改储蓄卡卡号:对卡号信息进行修改,包括对卡号,卡上余额
40、,卡的账户名的修改操作。 (3) 删除储蓄卡卡号:对银行卡以及对应的信息进行删除操作。2 信用卡的管理:用户能够添加卡号,修改卡号信息,删除卡号信息; (1) 添加信用卡卡号:用户能添加银行卡号信息,包括对卡号,卡上余额,卡的账户名的填写操作。 (2) 修改信用卡卡号:对卡号信息进行修改,包括对卡号,卡上余额,卡的账户名的修改操作。 (3) 删除信用卡卡号:对银行卡以及对应的信息进行删除操作。3.2.3 资金管理用户登录到系统后能够经过资金管理对家庭资金进行管理:1现金管理:能够查看家庭的总资金,显示现金和银行存款,并能根据实际情况对家里现金和银行存款额度进行修改;2 债务管理:首先能够查看家庭债务信息,包括家庭欠债和家庭放款,以及家庭的总负债额。并能根据用户需求对债务信息进行修改;3.2.4 日常收支在这个功能下用户能进行日常收支信息的录入:1 收入信息:首先显示数据库所有的收入信息,然后用户能够对收入信息进行管理,添加收入信息,修改收入信息,删除收入信息; (1) 添加收入信息:用户能够添加收入信息,包括对收入信息的日期,金额,经手人等的填写。 (2) 修改收入信息:用户能够修改收入信息,包括对收入信息的日期,金额,经手人等的修改。2 支出信息:用户能够对支出信息进行管理,添加支出信息,修改支出信息,删除支出信息; (1) 添加支出信息:
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100