收藏 分享(赏)

基于J2EE的财务管理系统设计与实现.doc

上传人:wo7103235 文档编号:6152301 上传时间:2019-03-30 格式:DOC 页数:34 大小:538.83KB
下载 相关 举报
基于J2EE的财务管理系统设计与实现.doc_第1页
第1页 / 共34页
基于J2EE的财务管理系统设计与实现.doc_第2页
第2页 / 共34页
基于J2EE的财务管理系统设计与实现.doc_第3页
第3页 / 共34页
基于J2EE的财务管理系统设计与实现.doc_第4页
第4页 / 共34页
基于J2EE的财务管理系统设计与实现.doc_第5页
第5页 / 共34页
点击查看更多>>
资源描述

1、大 连 民 族 学 院 本 科 毕 业 设 计(论 文)基于 J2EE 的财务管理系统设计与实现学 院(系): 专 业: 学 生 姓 名: 学 号: 指 导 教 师: 评 阅 教 师: 完 成 日 期: 大连民族学院基于 J2EE 的财务管理系统设计与实现- -摘 要随着软硬件技术的急速发展,计算机技术在社会生活中的方方面面都发挥着重要的作用。对人们的个人生活质量和生活方式也有着深远的影响,应用先进的网络和数据库技术,可以大大节省人力,物力,并且让我们生活的更舒服。财务管理系统是利用互联网的管理系统。家庭和个人的用户使用此软件,可以方便的进行个人理财,投资管理。用户可以将自己的每一笔收入和支出

2、输入到数据库中,软件帮你理财。本文主要介绍了财务管理系统的设计与实现。财务管理系统是一个基于网络的信息管理系统,它具有操作简单、成本低廉、效率高等优点,而且没有区域限制。全文分为项目意义及功能简介、开发工具介绍、系统分析及设计、系统的实现、系统页面的演示、系统测试、总结、参考文献、致谢、附录共十个部分。首先第一部分介绍了项目意义及功能简介;接着第二部分对Struts、Hibernate 、JSP 技术、 Eclipse 技术和 MySQL 数据库进行了简单的介绍;然后第三部分对系统的功能需求、技术路线及实施方案进行了叙述,对数据库的设计进行了描述;第四部分对系统的后台进行了实现;第五部分是对系

3、统的界面的演示;第六部分对系统进行了测试;第七部分对系统开发的过程进行了总结;最后第八部分对在毕业设计期间对我进行帮助的人表示感谢;第九部分列出了系统开发过程中查阅过的书籍。第十部分附了一些程序实现代码。关键词:MVC;Struts;JSP 基于 J2EE 的财务管理系统设计与实现- I -Base on J2EE financial Management System design and implementationAbstractWith the development of software and hardwares technology, computer Technology i

4、s bringing into play an important role in the societys life. Especially in the field of our living quality and life style, with the application of the advanced network and database technology, computer science save a lot of manpower and material resources, and make humans life being more comfortable

5、 .Finance management system is a system which using the internet. Domestic and personal users can easily put up financing , manage the investment by using this software. The users can also input their earning and payout into the date base .This paper describes the finance management system design an

6、d implementation. finance management information system is a network-based information management system. It has several advantages, such as simple, low cost, higher efficiency, and without regional restrictions.The full text of the project is divided into functional significance and briefings on th

7、e development of tools, systems analysis and design, the system achieved, System pages viewed, system testing and reviewing references, thank Appendix part of a total of ten. Firstly, part 1, the thesis introduces the item on the meaning and function profiles; And then, part 2, the paper takes a sim

8、ple briefing about Struts, Hibernate, JSP technology, Eclipse and My SQL database technology; Then part 3, the systems functional requirements, technical line and the implementation of the program described the database design; Part 4, the system to achieve the background; Part 5, the system interfa

9、ces to view; Part 6, the system is tested; Part 7, summing up the system development process o; Part 8, thanks to all the people helped me during the graduate design; Part 9, list the books about the system development process. Finally, part 10, addenda of program code.Key Words:MVC ;Struts;JSP基于 J2

10、EE 的财务管理系统设计与实现- II -目 录摘 要 .IAbstract II1 项目意义及功能简介.11.1 项目设置的目的以及意义.11.2 论文页眉页脚的编排22 开发工具介绍12.1 J2EE 的模型- 视图-控制( MVC)体系结构 .12.2 JSP 技术简介 .12.3 Eclipse 技术简介 22.4 struts 简介 .52.5 Hibernate 简介 62.6 MySQL 数据库简介 73 系统分析及设计73.1 系统的功能需求.73.2 技术路线及实行方案.83.3 数据设计.94 系统的实现104.1 显示层设计原则.124.2 控制层设计原则.124.3 控

11、制层设计原则.134.4 数据访问层设计原则.135 系统界面的演示145.1 登录用户界面145.2 用户管理界面.165.3 收支管理界面.176 系统测试196.1 概要.196.2 测试对象.196.3 测试的功能.196.3 测试方法.207 总 结.22结 论.23基于 J2EE 的财务管理系统设计与实现- III -参 考 文 献.24致 谢.25基于 J2EE 的财务管理系统设计与实现- 0 -1 项目意义及功能简介1.1 项目设置的目的以及意义我国居民的储蓄存款超过十万亿人民币。特别是像上海、深圳等发达城市,居民的可支配收入正在逐步达到中等发达国家水平,许多居民除了购房、购车

12、外有大量的金融资产,如何分配、管理金融资产是居民最大的需求。大多数个人对金融方面的需求从储蓄、保管金融资产向金融资产的保值、增值转变。有些人盲目投资于股市而导致大量损失,还有许多人把大部分资产存在银行做定期储蓄;最多的是介于二者之间,不知如何分配其金融资产。家庭如何管理金融资产呢?如何安排自己的富余的现金流,如何筹集自己所需的资金,成为了一个现实的问题。这就要求我们能够更好的家庭理财。现今社会发展越来越快,人民生活水平越来越高,人民的消费项目越来越多,使得我们对于怎样合理地进行财务上的收支,债务的管理很难做到完美无缺,以至于我们常常抱怨钱总是不够。在总的来说离不开信息处理,这正是计算机被广泛应

13、用于信息管理系统的原因。计算机的最大优点在于利用它能够高效准确地进行信息管理。使用计算机进行信息管理,不仅提高了工作效率,而且大大的提高了其安全性。公司理财研究对象以公司的资产、利润为主,个人理财的研究对象是个人收支为主。个人理财与公司理财有许多相同的地方,都是量入为出,善用现有资源增值。家庭的数入来自工作及家庭投资,而公司的收入则来自提供产品或服务。个人收入、公司收入都有增值能力。家庭支出与公司支出都遵循最小的成本换取最大的收益的原则,都期望获取一个投资增殖。公司借贷主要目的是创造企业价值(因而增加公司盈利及赚钱能力),家庭借贷主要目的也是得到价值,他是先使未来钱(如按揭)后还债。同时我发现

14、,许多财务上的原理和理论,用于家庭理财同样有效。所以,本人认为家庭理财可以从公司理财的理论中找到一些应该遵循的法则,来指导我们的家庭理财。计算机已经成为我们学习和工作的得力助手,使用其可方便的管理家庭财务今天,计算机的价格已经十分低廉,性能却有了长足的进步。它已经被应用于许多领域。基于 J2EE 的财务管理系统设计与实现- 1 -现在我国的家庭财务管理水平还停留在纸介质的基础上,这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。我作为一个计算机应用专业的毕业生,希望可以在这方面有所贡献。改革的总设计师邓小平同志说过“科

15、学技术是第一生产力”,我希望能用我所学的知识编制出一个实用的程序来帮助家庭进行财务管理。 本系统是在对当代社会家庭财务状况进行了全面分析的基础上,制作的关于处理家庭财产,家庭副业,家庭生活,家庭经营等方面的管理系统可以完成对各类信息的浏览、查询、添加、删除、修改。该系统是典型的财务管理系统,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。1.2 论文页眉页脚的编排(1)系统功能用户登录功能:用户通过系统登录页面,登录到系统中,显示项目列表。用户管理功能:删除用户,修改密

16、码。增加功能:添加用户。(2)收支管理功能增加收入功能:添加收入,例如:工资,投资回报,银行利息,债务收回,出售固定资产等。增加支出功能:添加支出,例如:物理管理费,汽车养路费,电费,水费,贷款利息,债务归还,购物等。收支管理功能:按照收支类型,费用类型,日期查询收支信息,或者全检索。(3)收支统计功能月份统计:按照月份对家庭收支进行统计,分别统计上旬,中旬,下旬的收入支出,以及收支平衡情况。基于 J2EE 的财务管理系统设计与实现- 2 -个人统计:按照家庭成员不同,进行收支统计,以及收支平衡情况。大 连 民 族 学 院 本 科 毕 业 设 计 ( 论 文 ) 题 目02 开发工具介绍2.1

17、 J2EE 的模型-视图-控制(MVC)体系结构模型-视图 -控制结构是交互式应用程序广泛使用的一种体系结构。它有效地在存储和展示数据的对象中区分功能模块以降低它们之间的连接度,这种体系结构将传统的输入、处理和输入模型转化为图形显示的用户交互模型,或者换一种说法,是多层次的 Web 商业应用; MVC 体系结构具有三个层面:模型(Model)、视图(View)和控制(Controller),每个层面有其各自的功能作用。在模型层、视图层和控制层之间划分责任可以减少代码的重复度,并使应用程序维护起来更简单。同时由于数据和商务逻辑的分开,在新的数据源加入和数据显示变化的时候,数据处理也会变得更简单。

18、2.2 JSP 技术简介JSP 是 Java Server Pages 的缩写,是由 SUN 公司倡导,许多公司参与,于1999 年推出的一种动态网页标准。JSP 是基于 Java servlet 以及整个 Java 体系的web 开发技术,利用这一技术可以建立安全的、跨平台的先进动态网站,并且这项技术还在不断的被更新和优化。JSP 和 ASP 技术非常相似, ASP 的编程语言是VBScript 和 JavaScript,JSP 使用的是 Java。与 ASP 相比,JSP 以 Java 技术为基础,又在许多方面做了改进,具有动态页面与静态页面分离,能够脱离软件平台的束缚,以及编译后运行等优

19、点,克服了 ASP 脚本级执行的缺点,因而逐渐成为Internet 上的主流开发工具。在传统的 HTML 页面文件中加入 Java 程序片和 JSP 标签就构成了一个 JSP页面文件,简单的说,一个 JSP 页面除了 HTML 标记符外,再使用标记符号“”,并在其间插入 Java 程序代码。JSP 页面文件的扩展名是 JSP,文件的名字必须符合标识符规定,由于 JSP 是基于 Java 语言,所以其名字区分大小写。当服务器上的第一个 JSP 页面被请求执行时,服务器上的 JSP 引擎首先将一个 JSP 页面转换成一个 Java 文件,再将这个 Java 文件编译生成字节码文件,然后通过执行字节

20、码文件响应客户的请求,而当这个 JSP 页面再次被请求执行时,JSP引擎将直接执行这个字节码文件来响应客户请求。JSP 页面的首次执行往往由服务器管理者来执行。大 连 民 族 学 院 本 科 毕 业 设 计 ( 论 文 ) 题 目12.3 Eclipse 技术简介随着因特网技术的飞速发展,面对商务活动的迅猛变化,需要有一种开发工具可以更加快速、更加方便、更加便宜地开发出商业应用程序。Eclipse 在众多 Java编辑工具中以友好的开发环境和完善的帮助工具使得程序员进行短期培训就可进行java 语言的商业软件的开发。本财务会计系统主要用 Eclipse 进行开发。Eclipse 是替代 IBM

21、 Visual Age for Java(以下简称 IVJ)的下一代 IDE 开发环境,但它未来的目标不仅仅是成为专门开发 Java 程序的 IDE 环境,根据Eclipse 的体系结构,通过开发插件,它能扩展到任何语言的开发,甚至能成为图片绘制的工具。目前,Eclipse 已经开始提供 C 语言开发的功能插件。更难能可贵的是,Eclipse 是一个开放源代码的项目,任何人都可以下载 Eclipse 的源代码,并且在此基础上开发自己的功能插件。也就是说未来只要有人需要,就会有建立在Eclipse 之上的 COBOL,Perl,Python 等语言的开发插件出现。同时可以通过开发新的插件扩展现有

22、插件的功能,比如在现有的 Java 开发环境中加入 Tomcat 服务器插件。可以无限扩展,而且有着统一的外观,操作和系统资源管理,这也正是Eclipse 的潜力所在。和 IVJ 一样,Eclipse 开发环境被称为 Workbench,它主要由三个部分组成:视图(Perspective),编辑窗口(Editor)和观察窗口(View)。下图 2.3.1 是它们之间的关系结构略图: 图 2.3.1Eclipse 结构略图大 连 民 族 学 院 本 科 毕 业 设 计 ( 论 文 ) 题 目2在图中,可以看出 Workbench 包含多个视图,而每个视图又包含不同的窗口。由于每个编辑窗口有很大的

23、共性,而且缺省情况它们都在同一区域中显示,因此只在每个视图中标出一个编辑窗口,以绿色表示。观察窗口则各不相同,以红色表示。所有文件的显示和编辑都包含在编辑窗口里。缺省情况下打开的多个文件是以标签(Tag Table)方式在同一个窗口中排列,可以用拖动方式将这些文件排列成各种布局。方法是拖动某一个文件的标签(tag)到编辑窗口的边框,当光标有相应的变化时再释放。 当文件被加入到项目中后,在资源浏览或 Java 包浏览窗口双击文件,Eclipse会试图打开这个文件:其中 Eclipse 内嵌的编辑器能缺省打开一些文件,如*.java,*.txt,*.class 等等。如果是其它类型的文件,Ecli

24、pse 会调用操作系统相应的缺省编辑器打开,如 word 文档,PDF 文件等。同时 Eclipse 也可以像 IVJ一样用指定的编辑器打开相应的文件。例如在 Eclipse 项目中双击 HTML 文件时,可能希望是用 Notepad 打开,而不是用系统缺省的 IE 浏览器打开。实现的方法是打开菜单栏中的 Workbench Preferences 对话框,之后在对话框中选择 Workbench File Editors,然后添加文件类型,如*.html,再为其指定编辑器即可。 在编辑窗口,还值得注意的是,习惯了 IVJ 的程序员在编辑 Java 程序的时候,更愿意以方法为独立的编辑单位(即在

25、编辑窗口中只显示单个的方法,而不是程序全部的源代码),这种方式也的确是非常合理的开发方式,不仅代码的显示更加简捷,还能辅助程序员编出封装性更好的类。在 Eclipse 在工具栏上提供了一个切换按钮,可以在“显示全部代码“和“只显示所选单元“(这里的单元指的是单个方法、变量、导入的包等)之间切换。其次要介绍的是观察窗口,它配合编辑窗口并提供了多种的相关信息和浏览方式。常用的观察窗口有资源浏览窗口(Navigator),Java 包浏览窗口(Packages),控制台(Console),任务栏(Task)等等。 浏览窗口和 Java 浏览窗口是观察窗口核心部分。前者和 Windows 的浏览器差不

26、多,能浏览项目文件夹中的所有文件,后者用来浏览项目中的 Java 包,包中的类,类中的变量和方法等信息。在 Java 浏览窗口中可以通过用鼠标右键的菜单中的 Open Type Hierarchy 打开层次浏览窗口(Hierarchy),这个窗口非常实用,它能非常清晰的查看类的层次结构。类中的编译出错信息可以在任务窗口中查到,同时它也可以成为名符其实的任务窗口:向其中添加新的任务描述信息,来跟踪项大 连 民 族 学 院 本 科 毕 业 设 计 ( 论 文 ) 题 目3目的进度。控制台则主要用来显示程序的输出信息。在调试程序的时候,会有更丰富的观察窗口来帮助程序员进行调试,如变量值察看窗口,断点

27、窗口等等。 观察窗口是任何 IDE 开发环境的核心,用好观察窗口是也就是用好 IDE 开发环境。Eclipse 提供了丰富的观察窗口,能真正用好这些窗口恐怕要得经过一段时间的磨练。 最后介绍视图。一个视图包括一个或多个编辑窗口和观察窗口。在开发环境的最左侧的快捷栏中的上部分显示的就是当前所打开的视图图标。视图是 Eclipse 的最灵活的部分,可以自定义每个视图中包含的观察窗口种类,也可以自定义一个新视图。这些功能都被包括在“Perspective“ 菜单中。在 Eclipse 的 Java 开发环境中提供了几种缺省视图,如资源视图(Resource Perspective,它也是第一次启动E

28、clipse 时的缺省视图),Java 视图(Java Perspective),调试视图(Debug Perspective),团队视图(Team Perspective)等等。每一种视图都对应不同种类的观察窗口。可以从菜单栏中的 Perspective Show View 看到该视图对应的观察窗口。当然,每个视图的观察窗口都是可配置的,可以在菜单栏中的 Perspective Customize 进行配置。多样化的视图不但可以帮助程序员以不同角度观察代码,也可以满足不同的编程习惯。 Eclipse 是一个开放源代码的、与 Net Beans、Sun ONE Studio 和 Borland

29、 J builder 类似的一种基于 Java 的整合型可扩展开发平台,也是目前最著名的开源项目之一,IBM 在最近几年里也一直在大力支持该项目的发展,目标是将其做成用以替代 IBM Visual Age for Java(简称 IVJ)的下一代 IDE 开发环境,并于 2001年 11 月宣布投入四千万美元资金到该项目的研发。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT)。其未来的目标不仅仅是成为专门开发 Java 程序的 IDE 环境,根

30、据 Eclipse 的体系结构,通过开发插件,它能扩展到任何语言的开发,甚至能成为图片绘制的工具。目前,Eclipse 已经开始提供 C 语言开发的功能插件。更难能可贵的是,Eclipse 是一个开放源代码的项目,任何人都可以下载 Eclipse 的源代码,并且在此基础上开发自己的功能插件。也就是说未来只要有人需要,就会有建立在Eclipse 之上的 COBOL,Perl,Python 等语言的开发插件出现。同时可以通过开发新的插件扩展现有插件的功能,比如本系列文章为了进行手机应用程序的开发就是通过 J2ME 插件的扩展来加以实现的。可以无限扩展,而且有着统一的外观,操作和系统资源管理,这也正

31、是 Eclipse 的潜力所在。大 连 民 族 学 院 本 科 毕 业 设 计 ( 论 文 ) 题 目42.4 struts 简介Struts 是一个为开发基于模型(Model)视图(View)控制器(Controller)(MVC)模式的应用架构的开源框架,是利用 Java Servlet 和 JSP 构建 Web 应用的一项非常有用的技术。Struts 由一组相互协作的类(组件)、Serlvet 以及 jsp tag lib 组成。 一个客户请求是是由控制器转发和处理的,但是,控制器如何知道什么样的信息转发到什么样的 Action 类呢?这就需要一些与动作和请求信息相对应的映射配置说明。在

32、 struts 中,这些配置映射信息是存储在特定的 XML 文件(比如struts-config.xml)。ActionForm Bean 负责保持一个应用系统的消息转移(或者说状态转移)的非持久性数据存储。ActionForm 的主要功能就是为 Action 的操作提供与客户表单相映射的数据(如果在客户指定的情况下,还包括对数据进行校验)。ActionForm负责对系统数据状态的保持,而 Action 则负责根据业务逻辑的需要,对数据状态进行修改,在改变系统状态后,ActionForm 则自动的回写新的数据状态并保持。、MVC 结构简要概述MVC(Model-View-Controller)

33、是现今为止比较流行的一种 Web 编程模式,在图形用户界面(Graphical User Interface GUI)的开发中,MVC 设计模型已经成为了划分功能的通用结构。MVC 最初由 Smalltalk 设计,该模型将功能划分为相互关联的三个组件模型,视图和控制器。每个组件都可以很容易的映射到三个主要的实现技术Bean,JSP,Servlet。2、MVC 结构中的重要组件模型:模型表示应用程序的业务逻辑。将业务规则装到组件中有利于测试,改进质量和促进重用。他可以再次被划分为状态和动作组件:1.状态组件状态定义了模型的当前设置值,并且包含更改这些值的方法。这些方法都是 JTTK 中获得一些

34、业务逻辑的地方。他通常是与协议无关的。在 JTTK中,JavaBean 是实现状态组件的逻辑选择。Bean 的可重用性允许状态组件的独立结构特性。而要成为协议无关的,状态组件必须经过隔离,而且使用 HTTP,RMI等协议的应用程序必须能够访问他,也就是说,协议可以是位于组件上的另一层。定义这样的结构,应该考虑当前的需求以及将来的增长和发展。2.动作组件动作定义了允许更改的状态,以响应事件。业务逻辑也规定了动作组件的结构。在实现动作组件过程中,选择变得很复杂。在 JTTK 中创建动作Bean 层来控制与状态组件之间的交互。大 连 民 族 学 院 本 科 毕 业 设 计 ( 论 文 ) 题 目5视

35、图:视图表示了应用程序的表示层。视图组件包含系统的当前状态,并提供适合于特定协议的用户界面。在编写 JTTK 中。很重要的协议是 HTTP 浏览器。作为用户界面的一部分,视图负责将特定的事件呈现个用户。将视图与模型分开使得 JTTK 界面的结构独立并具有不同的外观和属性。这些不同的界面能够与相同的模型相交互。JSP 是实现视图的通常选择。控制器:控制器提供了 MVC 结构的粘合剂。他负责接收事件,确定合适的处理程序,调用处理程序并出发合适的响应。因为考虑 JTTK 有功能强大 Java 程序做后台,Servlet 是用于控制器技术的最佳选择。在 MVC 结构中,控制器(Servlet)充当调度

36、程序,这就导致了一些难题。比如安全,事件识别,处理错误等。3、MVC 的特点:MVC 要求对应用分层,虽然要花费额外的工作,但会使 JTTK的结构清晰,产品的应用通过模型可以得到更好地体现。首先,最重要的是 JTTK系统是有多个视图对应一个模型的能力。在目前用户需求的快速变化下,可能有多种方式访问应用的要求。而系统则会随机应变,做出各种反应。其次,由于模型返回的数据不带任何显示格式,因而这些模型也可直接应用于接口的使用。再次,由于一个应用在 JTTK 中被分离为三层,因此有时改变其中的一层就能满足应用的改变。一个应用的业务流程或者业务规则的改变只需改动 MVC 的模型层。2.5 Hiberna

37、te 简介Hibernate 是一个免费的开源 Java 包,它使得与关系数据库打交道变得十分轻松,就像您的数据库中包含每天使用的普通 Java 对象一样,同时不必考虑如何把它们从神秘的数据库表中取出(或放回到数据库表中)。它解放了您,使您可以专注于应用程序的对象和功能,而不必担心如何保存它们或稍后如何找到它们。大多数应用程序都需要处理数据。Java 应用程序运行时,往往把数据封装为相互连接的对象网络,但是当程序结束时,这些对象就会消失在一团逻辑中,所以需要有一些保存它们的方法。有时候,甚至在编写应用程序之前,数据就已经存在了,所以需要有读入它们和将其表示为对象的方法。手动编写代码来执行这些任

38、务不仅单调乏味、易于出错,而且会占用整个应用程序的很大一部分开发工作量。 大 连 民 族 学 院 本 科 毕 业 设 计 ( 论 文 ) 题 目6优秀的面向对象开发人员厌倦了这种重复性的劳动,他们开始采用通常的“积极”偷懒做法,即,创建工具,使整个过程自动化。对于关系数据库来说,这种努力的最大成果就是对象/关系映射(ORM)工具。 这类工具有很多,从昂贵的商业产品到内置于 J2EE 中的 EJB 标准。然而,在很多情况下,这些工具具有自身的复杂性,使得开发人员必须学习使用它们的详细规则,并修改组成应用程序的类以满足映射系统的需要。由于这些工具为应付更加严格和复杂的企业需求而不断发展,于是在比较

39、简单和常见的场景中,使用它们所面临的复杂性反而盖过了所能获得的好处。这引起了一场革命,促进了轻量级解决方案的出现,而 Hibernate 就是这样的一个例子。 2.6 MySQL 数据库简介MySQL 是最受欢迎的开源 SQL 数据库管理系统,它由 MySQL AB 开发、发布和支持。MySQL AB 是一家基于 MySQL 开发人员的商业公司,它是一家使用了一种成功的商业模式来结合开源价值和方法论的第二代开源公司。MySQL 是 MySQL AB 的注册商标。MySQL 是一个数据库管理系统。一个数据库是一个结构化的数据集合。它可以是从一个简单的销售表到一个美术馆、或者一个社团网络的庞大的信

40、息集合。如果要添加、访问和处理存储在一个计算机数据库中的数据,你就需要一个像MySQL 这样的数据库管理系统。从计算机可以很好的处理大量的数据以来,数据库管理系统就在计算机处理中和独立应用程序或其他部分应用程序一样扮演着一个重要的角色。MySQL 是开源的。开源意味着任何人都可以使用和修改该软件,任何人都可以从 Internet 上下载和使用 MySQL 而不需要支付任何费用。MySQL 服务器工作在客户/服务器或嵌入系统中。MySQL 数据库服务器是一个客户/服务器系统,它由多线程 SQL 服务器组成,支持不同的后端、多个不同的客户程序和库、管理工具和广泛的应用程序接口(APIs)。MySQ

41、L 也可以是一个嵌入的多线程库,你可以把它连接到你的应用中而得到一个小、快且易于管理的产品。3 系统分析及设计3.1 系统的功能需求系统功能在宏观层次上可以分为四个方面,分别为收支出记账功能、系统管理功能、财务分析功能,图 3.1.1 是系统宏观图,图 3.1.2 是系统的整体流程图。大 连 民 族 学 院 本 科 毕 业 设 计 ( 论 文 ) 题 目7图 3.1.1 系统宏观图家庭财务管理软件登陆错误界面家庭财务管理软件错误登录 正 确 登 录收 支管理系统管理费用统计月份统计个人统计月份统计个人统计增加收入收支管理增加支出费用类型添加费用图 3.1.2 整体流程图家庭财务管理系统收支管理

42、用户管理费用统计大 连 民 族 学 院 本 科 毕 业 设 计 ( 论 文 ) 题 目83.2 技术路线及实行方案系统采用基于 J2EE 的 B/S 结构的三层架构。系统的开发工具、基盘软件、数据库全部采用自由软件软件。J2EE 三层架构应用模型让多层应用程序实现服务,并消除了很多的问题,提供了可伸缩的,易访问的,易于管理的方法。 J2EE 应用模型把实现多层结构服务的工作划分为二部分: 开发者实现商业和表达逻辑,以及由 J2EE 平台提供的标准的系统服务。开发者可以依赖于这个平台为开发中间层服务中遇到的系统级硬件问题提供 。因此选择 J2EE 平台作为开发平台是可以行得通的。此外选择的开发工

43、具还有 MySql 数据库,Tomcat 虚拟服务器软件,还有基于Struts 架构的开发软件 Eclipse。图 3.2.1 是技术开发框架。图 3.2.1 技术开发框架3.3 数据设计表 3.3.1 用户表:users列名 数据类型 允许空 主键 默认值 附加Id INTEGER No PRI Auto IncrementUserName VARCHAR(45) NoPassword VARCHAR(45) No表 3.3.2 收支表:moneyinout列名 数据类型 允许空 主键 默认值 附加IE6.0TOMCAT6.0JSTL1.2 STRUTS1.3 mysql5.0HIPERNE

44、T3.1JSP JAVA大 连 民 族 学 院 本 科 毕 业 设 计 ( 论 文 ) 题 目9Id INTEGER No PRI Auto Incrementmoney INTEGER Notypes VARCHAR(45) Nodesciption VARCHAR(45) Nodate VARCHAR(45) Noisin VARCHAR(45) No表 3.3.3 用户表:users列名 数据类型 允许空 主键 默认值 附加Id INTEGER No PRI Auto Incrementname VARCHAR(45) Noisin VARCHAR(45) No4 系统的实现本家庭财务管

45、理系统采用 J2EE 的 MVC 三层体系结构。信息的显示以及用户的输入处理用 JSP 完成(显示层),利用 STRUTS 框架中的 Servlet 和 Action 进行控制(控制层),针对每块逻辑数据进行的处理在业务处理层集中完成,针对具体的数据访问的处理归集的数据访问层进行处理(DAO)。数据访问层利用数据访问常用的框架软件hibernate 来实现。下图 3.4.1 是软件体系结构的概念图大 连 民 族 学 院 本 科 毕 业 设 计 ( 论 文 ) 题 目10控制层数据访问层JSP1追加链接 1 修正链接 2JSP2 删除链接 3删除链接 3Action1Struts Servlet

46、 Struts config fileaction1 action2action3Action2 Action3管理类追加处理 修正处理 删除处理库访问类(DAO)追加处理 修正处理 删除处理数据表显示层处理1处理2处理3业务处理层大 连 民 族 学 院 本 科 毕 业 设 计 ( 论 文 ) 题 目11图 3.4.1 软件体系结构的概念图4.1 显示层设计原则(1)户角色分割页面原则关于界面如何分割的问题,我们可以遵循下面的顺序:首先,将系统的用户分成各种角色,然后考虑各个角色在与系统进行交互的时候,系统应该提供哪些输入条件,以及系统需要进行哪些反馈。然后,根据系统的角色,将系统的界面分割成

47、不同的大块,再根据各个角色所需要的具体功能,把一每一个页面设计出来。(2)一致性原则整个系统的界面外观、布局、人机交互方式及信息显示格式等要有相似性。一致性原则有助于用户学习系统的操作,并减少使用时的出错率。(3)信息反馈信息反馈是指系统对用户的操作所作的反应,它可以表明用户的操作是否为系统所接受、是否正确,以及操作的效果怎样。反馈方式可以是文本、图形和甚至声音等。(4)空间布局的合理性界面空间的布局应简洁明了。设计师应根据对现实操作物的理解设计出能给用户带来方便的界面。应该避免繁杂的页面布局,在一个页面中提供过多的功能给用户,只能给用户带来混乱的感觉,降低了系统的可操作性。(5)用颜色和图形

48、界面上使用颜色可以更好地进行提示操作,还能缓解操作者的视觉疲劳。但是过于纷繁的颜色会带来相反的效果,所用颜色一般不超过 35 种。(6)合的字型和大小大 连 民 族 学 院 本 科 毕 业 设 计 ( 论 文 ) 题 目12一个界面中,最好不要有太多的字型,更不宜选用字型太复杂或软弱的体,越简洁清晰则辨识性越佳。例如,字符高宽比可取 21 或 11, 以便清晰识别4.2 控制层设计原则对控制层的设计,我们遵循如下原则,对每个处理,设计一个 Action(行为)与之相对应,针对这个 Action 我们需要在 Struts 的配置文件中建立一个 Action 定义,对应这个 Action 我们也建

49、立一个 Struts 的 Action 类。当用户在界面上触发某个处理之后,系统就会根据 struts 配置文件中的设定调用相应的 Action 类,这个 Action 类会调用具体的业务处理类,进行具体的业务处理。因为是控制层的处理,所以 Action 类只是调用具体的业务处理层的处理类,在 Action 类中不做具体的业务处理。4.3 控制层设计原则业务处理层在进行类分割时遵循以数据为中心的原则。也就是说,如果针对一个数据的各种处理,归拢到一个类之中。当然这里的一个数据不单纯的指一个物理上的一个表,虽然大多数情况下是这样的,但是不完全是这样,它是指一个从逻辑上讲的数据,比如像交易和交易明细在数据库中虽然经常分为两个表,但是在逻辑上他还是一个数据,这样我们在划分处理这个数据的类的时候,也只划分一个类。当针对同一个类的处理过多的时候,需要将这个类进行进一步的分割,一个类不能过于庞大,否则不利于维护、变更和统计。所以当针对某个数据的处理过多的时候,我们需

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 学术论文 > 毕业论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报