精选文档停车管理系统-毕业设计(论文)_第1页
精选文档停车管理系统-毕业设计(论文)_第2页
精选文档停车管理系统-毕业设计(论文)_第3页
精选文档停车管理系统-毕业设计(论文)_第4页
精选文档停车管理系统-毕业设计(论文)_第5页
已阅读5页,还剩53页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

〖精选文档〗停车管理系统-毕业设计(论文)〖精选文档〗停车管理系统-毕业设计(论文)引言赚钱对于企业可以说是第一要务了,毕竟,没有充沛的资金发展企业只是一句空话。但是在现实社会中,赚钱靠的已经不单单是聪明的头脑了,对于时机的掌控,资源的合理利用以及服务的效率也起着决定性的作用。毫无疑问,在现在这个社会,互联网就是这么一个很好的工具,所以才会有这么多的组织和个人加入到了互联网的大军中,发掘使用互联网的优势,因为只有合理有效的利用互联网,才能创造更大的商机,掌握更多的市场份额,这样才会给企业带来更大的利润。但是现在的计算机技术日新月异,进步飞快,这也导致企业之间的竞争也日益激烈,企业单位对各自的发展也提出了更高的要求。停车场的管理人员也不希望错过这个巨大的商机,他们也希望可以通过计算机技术可以增加他们他们的核心竞争了。他们也希望可以通过设计一个系统可以简化一下他们现在传统的停车记录模式,解放他们的人力,增加他们对于停车场的管理,可以更方便的给于管理人员对于自己的停车场的停车情况,可以更好的给自己的停车场指定属于自己的销售和经营策略。其次,本文提出了对停车管理管理系统的设计内容和组织结构并分析了并写明了该系统需要的开发环境和新系统的主要功能。接着本文写了关于该系统的总体设计,详细设计,分析了个模块的分工以及详细内容然后本文写明了数据库的设计和模块设计;最后写了测试方法和测试步骤。本文共分为六章,第1章概述,介绍产品背景和现状;第2章系统开发环境和工具;第3章系统分析,简要的介绍了从可行性分析和需求分析两方面对整个系统进行分析;第4章系统设计,介绍了系统的设计思路和相应模块的功能、系统数据库的设计和个数据表的功能分工和数据表的结构;第5章主要模块设计与实现,介绍了系统各模块的功能;第六章系统测试、总结和展望,介绍了系统的最后测试方法,总结和展望。绪论本章主要描述了停车管理系统的设计与实现的背景、意义,分析现状,进而提出了本文所要研究的内容及目标。设计背景自从改革开放以来,我国的经济建设的步伐和科学发展水平在不停的提高,与此同时人们的生活水平也在飞速的提升。相比15年前,现在的家庭私家车的保有量可以说是翻了几倍,私家车的大量普及也带来了许许多多、形形色色的问题,其中最主要的一个问题是停车难。在我们国家,被一些人称作“停车经济”的这一个新兴的产业已经开始。许多的投资人看中这个的商机,为了这块在汽车衍生的经济价值产业链上的诱人的蛋糕。据了解,在上海市中心有个停车场,只是一个普通的商用停车场,在他们经营者的合理的经营和管理下,白天车位基本不空,晚上与周边的社区错峰停车,给这个停车场带来了每年500多万的收入。听其他的业内人士的反应,目前,在有些停车场除了有停车收费这个收入以外还有对停车位进行买卖,一个普通的停车位,都有10万左右的价格。可以说现在经营一个停车场,就是在养一只“下金蛋的鸡”。在这样的情况下,一个高效的、方便快捷的停车管理系统,无论对于停车场管理人员,还是对于车主,都是可以提供许多方便的,尤其是对于停车场来说,一个优秀的停车管理系统可以帮整个停车场节约一笔很大的人力成本,给予这个停车场更好的管理环境。基于这样的前提,设计一个方便、快捷高效的停车管理系统就显得非常必要。和传统的笔纸记录管理相比,使用本系统可以更加快捷,高效的管理停车场里的车辆和车位,而车主也可以提升出行效率。设计目的和意义我们设计这个停车管理系统就是为了能改变当下这种使用传统记录方式的停车管理系统,能够优化这种低下效率,在此基础上,力争能够以最大的限度来节约人力和物力。根据我们对于停车场管理人员的调查和咨询,我发现现在对于当前使用的停车管理系统最大的不满是系统过于复杂,操作困难,难以上手。根据调查到的情况和现在的实际信息,本项目着重搭建一个以高效率和操作简单为核心要素的系统。本系统给予了停车场管理人员对停车场中车辆,车位和财务进行管理。管理员可以灵活运用相关权限开展工作。在车位管理,车辆的停放和驶离、缴费,停车场收入等工作上全部交给系统来完成,以此来实现自动操作,这样可以解放一些工作人员,让他们可以参与到其他的工作中去,或许可以消减掉一笔人力资源的支出。这样研发本系统的意义也已经达成。本文研究内容及主要贡献这篇设计性论文,将会由一下的几个方面来讲述:可靠的系统需求分析、严谨的可行性分析、详细的系统的设计与实现,以及完善的软件测试这五个部分。本系统有以下几大功能:管理员的登录和登出,车辆停入、车主取车、车位情况概览、车位的增删、停车信息概览、停车历史信息概览、停车收入概览。本系统的使用。本系统使用了计算机设备和网路服务,相比较以往的系统能更大程度上的使用人力资源,一定程度上减轻了单位的运营支出,给于传统的停车场的管理和运营带来了新的启示。而本文组织结构如下:第一章绪论:这个章节主要是介绍设计背景、设计意义,同时分析一下停车场管理系统的主要的处理内容,并提出了本文的研究内容以及研究目标。第二章开发环境:主要介绍整个设计将会使用到的那些数据库,编程语言;编程环境等。第三章主要是从可行性分析和需求分析这两方面对这个停车管理系统的可行性研究,看是否可以完成这个系统,并且在需求分析中,对整个系统进行分析得出整个系统的模块划分情况。第四章主要描述了系统设计部分,通过不同的设计方向对整个停车管理系统进行设计,主要将系统中的主要内容和数据逻辑的主要内容设计出来给于支持。第五章对整个系统的实现进行描述,将整个系统的的那些模块都实现出来,并进行展示,对其中的操作和内容进行说明。第六章对整个系统进行测试,然后全文进行了总结,归纳了本文的主要工作,并指出了需要进一步研究的问题。本章小结在本章中主要介绍了相应的系统背景,同查阅不同的文献和资料可以看出停车管理系统对于停车场管理人员来说,还是十分重要的。基于互联网的停车管理系统与传统的停车管理系统相比而言,他有许多的便利,比如及时性、准确性的优势,这也无疑是停车管理系统将会是各个停车场的新宠儿,而互联网有其不可代替的便利性,全球性,及时性的优势在,一个合理,有效的停车管理系统能很大程度上提高停车场的服务效率,提升其产业竞争力,在现在这个什么都要讲究快的时代来说,时间就是生命,时间就是金钱,所以在停车管理系统上还是有很大的市场的。开发环境及工具本章具体描述了停车管理系统开发所涉及的软件工程理论和数据库理论以及部分开发技术基础进行概述介绍。数据库技术数据库技术是通过研究数据库的结构、存储、设计、管理以及应用的一门软件学科,并利用这些理论来实现对数据库中的数据进行处理、分析和理解的技术。关系模型数据库理论发展多年,经过无数的考验留下了最常见的三种数据模型,都拥有着一定程度的应用领域。它们是层次模型,网状模型和关系模型。而这之中关系模型是理论最成熟,应用最广泛的数据模型,关系模型是一种数学化的模型,这也意味着数学中的一些数理逻辑同样适用于关系模型。在关系模型中,数据存放在一种称为二维表的逻辑单元中,这个二维表格代表着一个实体集。整个数据库又是由若干个相互关联的二维表也就是实体集组成的。关系模型和层次模型、网状模型最大的区别不是利用指针导航数据,而是通过一种称为键的事物进行导航寻查。而且对于用户来说它最大的优点是没有必要涉及存储结构、访问技术等细节。因此即便晚在20世纪80年代关系模型才形成产品,但是其普及应用速度之快,让人惊讶不已,而这也正是市场和用户的选择证明,最终关系数据模型开发产品取代了层次、网状数据库产品。[6]结构化查询语言结构化查询语言(Structured

Query

Language,SQL)是关系数据库模型的典型语言,也是最具标志性的。其功能包括查询、操纵、定义、控制。目前被确定为关系数据库系统的国际标准,被用户普遍接受。SQL成为国际标准以后不但对数据库领域产生了极大影响,甚至于在数据库相关的学术领域之外的商业领域特别是软件开发相关商业领域也有着举足轻重的地位,因为很多软件产品也纷纷将SQL语言的与自己所开发的软件产品结合起来。在这样的大趋势下SQL语言成为了关系数据库领域中的主流语言,是所有学习数据库知识的人所必须接触了解学习使用的。[6]MySQL5.5介绍MySQL是一款非常实用的小型的数据库管理系统,这款关系型数据库是由瑞典的MySQLAB进行研发的,后来被Oracle收购了,现在更是成为了Oracle旗下的一款拳头产品,他是实用C语言和C++语言编写的,是可以非常广泛的工作在不同的平台上。MySQL数据库因其速度快、体积小、可靠性和其开放源代码的特点可以说是当下最流行的关系数据库管理系统。说道关系数据库,这种数据库就是将数据分别保存在不同的表中,而不是像其他那样将数据保存在一个数据仓中,这样做的好处是可以很好的增加速度、增加灵活性。但是和那些例如SQLSever、Oracle、DB2等的大型关系数据库相比,MySQL数据库就显得规模小,功能有限了起来,不过对于这个系统来说,却是搓搓有余了。[6]面向对象编程技术面向对象编程(Object

Oriented

Programming,OOP,面向对象程序设计)是一种计算机编程架构。面向对象编程其中之一的基本原则是其编写的计算机程序是由单个能够完整执行一个子程序功能的单元或对象组合而成。面向对象编程技术有三个主要特点:灵活性、扩展性以及重用性,这也是软件工程所追求的目标。面向对象编程技术面向对象语言(Object-Oriented

Language)是一种以对象为基本结构单元的程序设计语言,用来描述设计是以对象为核心的编程方法,对象是程序运行时的基本组成部分。面向对象语言提供类、继承和其他组件。从面向过程开始(面向过程,是以过程为中心的编程思想),再到后来面向对象逐渐成为主流,面向对象语言开始占据历史舞台。一开始面向对象的程序其实并非是面向对象语言写出来的,使用面向过程的语言也可以写出面向对象的程序,只是实现比较曲折,所以后来才会有层出不穷的面向对象语言。

面向对象编程具有以下优点:

(1)易维护

面向对象思想设计的程序可读性高,因为继承这一特性的存在,即使需要改变需求,也只要改动很有限的一部分模块,大部分是可以重用的,所以维护起来极为方便成本也很低。

(2)易扩展

依旧是得益于继承这一特性。程序员能够在标准的模块上构建程序,而不必从零起步。这将会大大减少软件开发时间并提高生产效率。要注意的是这里的标准值得实际上是长年累月的开发工作中程序员间所达成共识的认知。

(3)模块化

封装可以定义对象的属性和方法的访问级别,通过不同的访问修饰符对外暴露安全的接口,防止内部数据在不安全的情况下被修改。这样可以使程序具备更高的模块化程度,方便后期的维护和修改。

(4)方便建模

虽然面向对象语言中的对象与现实生活中的对象并不是同个概念,但很多时候,往往可以使用现实生活中对象的概念抽象后稍作修改来进行建模,这大大方便了建模的过程。(但直接使用现实中的对象来建模有时会适得其反)。Java介绍Java是当下全球最炙手可热的面向对象编程的语言之一。它不光吸收了C++这门语言的各种长处,还摒弃了C++语言中里十分难以理解的部分,比如像:多继承、指针等概念。因此,这样的做法使得Java语言比起C++语言多了功能强大和简单易用两个特征。它的其、灵活、多平台的特性,使得我们可以在PC、Web、手机移动端等诸多平台使用它,现在,Java那个咖啡logo已经风靡全球了。同时,Java还拥有着可以说是全球最大的专业开发者社区,无数技术爱好者在社区内自发地维护Java,极大地推动了Java的发展和普及。基于B/S架构下的WEB开发技术在整个Web开发技术中一共有两个开发的模式,一个是B/S架构,一个是C/S架构。对于这个系统来说,B/S架构更加适合这个系统。§2.3.1

B/S架构的三层模式Browser/Server,中文译为浏览器/服务器结构,是B/S架构的全称。

Browser指的是Web浏览器,只有极少数事务逻辑在前端实现,大部分主要事务逻辑在服务器端实现。B/S架构的系统无须特别安装,只需要有能够联网的浏览器即可。其实就是前端上用户所进行的一系列操作,大部分的逻辑交给后台来实现,前端大部分是做一些数据渲染,请求等比较少的逻辑处理。

B/S架构有三层,分别为:

第一层表现层:主要完成用户和后台的交互及最终查询结果的输出功能。

第二层逻辑层:主要是利用服务器完成客户端的应用逻辑功能。

第三层数据层:主要是接受客户端请求后独立进行各种运算。

B/S架构的优点:

1、客户端无需安装,有Web浏览器即可。

2、BS架构可以直接放在广域网上,通过一定的权限控制实现多客户访问的目的,交互性较强。

3、BS架构无需用户安装客户端,只需要对服务器进行定期的维护升级。可以随时更新版本,而无需用户进行任何额外操作。

§2.3.2

B/S架构存在的问题

结合本系统设计的实际情况来看,B/S架构也有一定的缺陷,但是可以通过一些手段去优化。

首先,B/S结构设计的服务器所占据的地位太过重要,因为所有主要功能的实现都依赖它对事务逻辑的处理效能,换句话说,服务器数据负荷通常都很严重。一旦服务器崩溃,对于整个系统和用户群体来说都是灾难性的打击。

而且假如涉及的数据信息较多,数据库设计时各个数据表间的关系更加复杂,所以为了保护数据的完备性和准确性需要仔细考虑并且不断尝试优化数据库的设计和保证数据库查询语句的准确性、有效性和高效性以避免恶果出现。§2.3.3

基于B/S架构的Web应用框架Struts2Struts2是一个Web应用框架,它是基于MVC的设计模式,其实它的本质上还是相当于一个Servlet。MVC的设计模式是将整个系统的各个不同的组件进行分类,一般来说将整个系统将被分成三个模块,分别是:模型层、视图层和控制层。而Struct2相当于一个控制器来作为模型层和视图层这两方面的交互机制。Struct2这个Web应用框架是由这三个部分组成的:控制层FilterDispatcher、模型层Action、和视图层Result。FilterDispatcher是负责对所有用户发送过来的请求进行拦截,然后根据要求来调用合适的Action类,而每一个Action类里面都是有一个可以运行的execute的方法,然后将数据给Result,让他将控制层传递给他的数据进行合适的加工更好地展示给用户,能够让人机之间的交互变得更加的简洁,有效。[4]图2-SEQ图_2_-\*ARABIC1struct2的运行方式HibernateHibernate是一个Web应用开发的框架,是一个ORM(Object-RelationalMapping对象关系映射)框架,同时他也是一个开源的框架。Hibernate其实是通过对于JDBC进行了一定非常轻量级的操作从而得到的。从下图2Hibernate的运行方式中可以看出Hibernate的运行方式:Configration负责对Hibernate进行配置同时启动Hibernate,SessionFactory是对Hibernate进行初始化操作,而Session就是对持久化对象进行CRUD操作了,而最后Tracsaction就是对事物进行负责。[4]图2-SEQ图_2_-\*ARABIC2Hibernate的运行方式SpringSpring框架是由RodJohnson创建。Spring框架是RodJohnson为了解决企业级的软件开发过程中的所出现的复杂性而创建出来的。Spring框架是使用了非常简单的基于JavaBean的框架,它是一个开源的框架在Java平台上面。Spring框架可以在Java软件开发的过程当中都有非常不错的好处,可以让Java软件开发变得非常的轻松,简单。[4]SSH框架SSH框架是一个现在非常流行的一个用于JavaWeb开发的集成的开发框架,这个框架是由三个框架进行集成过来的,他们分别是:Struct2、Spring、Hibernate。由于这三个框架是开源的,所以使用SSH框架也是免费的。这个集成SSH框架的系统可以从职责上细分成四层,他们分别是表示层、业务逻辑层、数据持久层和域模块层(实体层)。这样做的好处是可以很好的帮助软件的开发人员在很短的时间里面就可以搭建好一个结构清楚、十分好用的Web程序了,对于后期的维护也十分的方便。在这个SSH框架中Struts是作为整个系统的基础框架,负责MVC的隔离操作,而Hibernate框架则是提供对持久层操作的支持,而Spring框架则是在一方面提供业务层所需的帮助和支持,另一方面能使Struts和Hibernate更好地工作。SSH框架是一个集成的框架,要使用SSH这个框架,首先需要对这个框架进行配置。第一步是先配置Struct2框架:(1)要使用Struts2框架的话,那就要先要将Struts2这个框架的主要Jar架包导入到相对应的文件夹下,这个框架的架包有许多,只要将主要的架包和你用到的架包导入就行了,并不需要将全部的架包全都导入到文件夹下。(2)修改web.xml文件中的内容,配置Struts2的核心控制部件:过滤器。(3)在上面两部完成后配置Struts.xml就可以了。第二步是配置Spring框架:(1)和Struts2框架一样先导入Spring框架的架包。(2)修改web.xml文件,配置监听器:这个是由Spring框架来提供的。(3)配置applicationContext.xml文件,这个是Spring框架的一个重要的配置文件。第三步是以Hibernate的配置:和前面一样导入架包,然后对*.hbm.xml文件进行配置。后面是对这三个框架进行集成:(一)在Spring中集成Hibernate是将Hibernate中用到的数据源DataSource、事务管理器、SessionFactory等都交给Spring容器来进行管理,使用Spring框架中的这个LocalSessionFactoryBean来对Hibernate中的SessionFactory进行配置,不在需要重新配置一个文件了。(二)在Spring中集成Struts2,这个集成的目的是将Struct2中的Action的实例化操作交由Spring的容器进行管理,使得整个框架更加的方便。[7]开发工具本系统的开发工具:eclipse和Tomcat。(1)eclipse介绍Eclipse是基于Java的并且是开放源代码的一款可扩展的开发平台,他也可以说是现在当下最流行的集成开发环境了,使用这个环境可以非常高效的进行Java的程序开发了。Eclipse是只有一个框架和一组服务的非常简单的开发平台,它可以通过不同的开发组件和开发插件来构成自己所需的开发环境,现在网上下载的eclipse是会附带一系列的标准插件组,其中就包括我们开发java所需的Java开发工具。Eclipse是起始于1999年4月,它一开始是由IBM开发的,是为了代替原来的商业软件VisualAgeforJava而开发的新一代的跨平台的自由集成开发环境。而当下却是由IBM联合全球的150多家软件企业组成的一个Eclipse联盟进行过开发,其中就包括了Sybase、RationalSoftware、Borland、RedHat等公司。现在这款软件是由著名的软件供应商联盟Eclipse基金会来进行管理的,这是一个非盈利性质的联盟。[7]Eclipse是一款非常著名的跨平台的IDE(IntegratedDevelopmentEnvironment自由集成开发环境),虽然这个平台一开始只是给Java语言来进行开发的,但是由于Eclipse只是一个框架平台特性,我们现在也可以通过不同的插件来实现作为其他计算机语言的开发平台,比如C++、Python。现在,许多的软件开发人员为我们提供了许许多多的插件,这也使得Eclipse拥有了相比较其他的IDE有了其难以具有的灵活性。由于Eclipse的插件的多样性,为用户提供了一个非常好的集成开发环境。(2)Tomcat介绍Tomcat是一款可以说是风靡全球的Web服务器。它是Jakarta项目中的一个最重要的一个项目,这个项目是由Apache软件基金会提出的。然后,又有许多家公司参与其中,比如像著名的Sun公司。因为有着著名的Sun公司的参与和给于技术支持,所以,在Tomcat上像最新的Servlet和JSP规范都能最快的得到体现。Tomcat还可以为许多后台语言包括Java提供服务器代理服务。由此可见,Tomcat是一个技术非常先进的轻量级Web应用服务器,而且这个服务器十分的稳定,简单易用,并且是一个开源的免费软件,这个对于广大的JavaWeb的学习者来说是一个非常重要的福音,还得到了许多软件开发商的青睐。本章小结通过这个章节,可以非常清楚的了解到,我们这个系统将要使用的那些关键的技术,比如数据库,我们将用到关系型数据库MySQL,正是一个非常好用的小型数据库,以及数据库的专用查询语言。比如用到的面向对象设计思想,基于这个基础的语言Java语言,这是一个十分成熟,十分强大的一个语言,它在业务处理方面的编程能力是十分的强大。另外,我还对于这个系统的将要用到的框架和架构进行了说明。系统分析本章是全文的重点章节,通过需求分析来确定这个系统的设计方向、通过可行性分析来确认系统设计的可行性。通过这两方面的分析来展示系统。可行性分析当开始开发一个软件时,第一个进入的软件开发阶段就是可行性分析研究了。这个阶段是非常重要的一个阶段,在这个阶段里可以很好地对所需要开发的部分进行问题分析,看看有无可行的解决方案,进而可以非常方便地进行规避这些问题,从而很好地规避人力、物力、财力等方面的浪费。这个可行性分析由三部分组成:技术可行性、系统操作可行性、经济因素可行性和社会因素可行性。技术可行性分析本系统是基于MVC模式的SSH框架进行设计的一个停车管理系统,采用B/S结构的,方便用户进行操作。在jsp页面处获取用户输入的数据或是操作,然后由servlet调用java程序执行用户操作,然后再返回用户所需要的数据生成jsp页面进行展示,来形成交互。实现本系统需要的技术包括:eclipse开发环境、Tomcat服务器、MySQL5.5关系数据库、html5、css3、javascript、SSH框架等。现在这些技术已经十分成熟了,有着丰富的资源、规范的行业标准、大量的浏览器支持。在这些条件下,基础的技术方面是没有问题的。同时停车管理系统有以下特点:一是数据量大,要求在短时间内正确查询内容;二是即时处理,要不断更新最新的数据信息。基于以上两个特点,在现有的这些技术条件下是可以都达到要求的目标的。在这样的条件下进行组建管理系统,这个系统使用JSP页面作为前台,而MySQL数据库做后台来进行,Tomcat服务器作为WEB服务器。这样做的好处是前台的可视化程度较高,有较强的人机交互能力,同时服务应用起来也十分地方便、直观。同时在后台的数据库功能也是十分地强大,可以更好的支持这个系统的运行。系统操作可行性分析本系统所需要的运行环境并不高,完全可以在Windows

操作系统平台上运行,数据库服务是选择了MySQL,开发工具采用的Eclipse,服务器是选择了Tomcat。这样做的好处是可以做的界面美观、简洁、容易操作,可以十分方便地让用户进行信息交流。

经济可行性分析(一)人员设备支出整套系统开发所需要的设备等方面是已有的没有另外的开支,整个开发工作是由我一个人完成的,没有雇人,没有什么支出。(二)版权支出整套系统所使用所有软件都是免费开源的,可以直接使用的,也没有支出。收益/投资比供内部人员使用,且由内部人员开发。无需收益与投资。社会因素可行性分析法律因素所用开发工具、系统软件均为免费。所使用的框架也都是免费的。这个系统也是由学生自主开发,具有独立的版权,并且这个系统的所有权及最终解释权归属于这个开发者所有。用户使用可行性普通大众均具备使用本系统的能力。需求分析现在私家车的高速普及,就像现在的高速路网。人均车辆保有量的飞快增加,在上海这些大城市体现的尤为突出,可是在这些地方停车位却远远不能满足这些车辆的需求。那么,一个高效易用的管理系统是必然之需。目前西方已有较多类似案例,且应用效果良好,前景广泛。所以该系统有开发价值,应当进行研发。需求分析的要求和目的需求分析是对用户需求的真正明确,是对于这个问题所需要解决的方面与方向的明确。只有像这样子做到真正的理解好这个问题,才能更好的去解决这个问题。需求分析是对于这个系统的需求进行描述,通过各种模型、定义、要求说明等来更好地给开发者和提出者之间建立一个良好的理解沟通的桥梁。所以说,这个需求分析可以使系统更加实用,更好地解决实际问题。进行详细的需求分析是必不可缺的。功能分析停车管理系统的功能模块如下图3停车管理系统的功能模块所示。图3-SEQ图_3_-\*ARABIC1停车管理系统的功能模块这个停车管理系统的主要功能模块是包括了管理人员对于这个这里停车位的管理和对于财务的管理。停车位的管理:车辆停入:录入车牌号,随机进入当前空车位。车辆驶离:录入已停车牌,模拟取车操作。车位状态的查询:浏览查看当前停车场所有车位状态。车位设置:管理员新增或删除车位。财务管理停车费用的计算:管理员查看系统计时所结算的停车费用。收入汇总:结算当月停车费收入。数据分析因为该系统的设计目标,是一套成熟易用的公共事物管理类系统。为了满足需求方的实际使用需要,并符合软件设计的各项要求,本系统需要满足以下原则:安全性:保证各类账号以及数据库安全。实用性:结合实际,满足各项基本功能需求。数据库:各项表设计贴合具体需求,易于使用,性能合理。系统流程分析该系统的流程分析图如下图4。管理员管理员登陆界面密码验证主界面停车/驶出车位管理查看停车记录当月收入增减车位查看车位密码错误收取费用图3-SEQ图_3_-\*ARABIC2流程分析图本章小结通过对停车系统的可行性分析和需求分析,得出该系统在经济、技术、社会、操作性等各方面上是可行的,并由此细化了整个系统所需要的各项具体功能。在这个停车管理系统中我们将这个系统的主要的功能将他们细分到了两个模块中其中一个模块是车位管理,其中主要的工作是对车位状态的改变比如说停车和取车这连个操作,还有是对车位数量的操作,增/删车位。另一个模块是财务管理,其中一个是对于取车的用户计算他所停车的时间和他所需要付的费用。另一个是对于各个月的收入的汇总操作。这些就是我将要设计的停车管理系统中的各个模块的情况。系统设计本章主要介绍停车管理系统的设计与实现,包括系统总体设计、详细设计、数据库设计。总体设计系统模块图如图4-1所示。图4-SEQ图_4_-\*ARABIC1系统模块图车位管理模块车位管理模块主要分为:车主泊车车主取车车位状态查看车位状态设置财务管理模块财务管理模块主要分为:各车停车费用当月收入详细设计这次详细设计主要是细分为:车主泊车记录模块、车主取车收费模块、车位查看模块、车位状态设置模块、当月收入模块。车主泊车记录模块详细设计车主泊车:录入车牌号,随机进入当前空车位。车主泊车记录模块流程图如图4-2所示。结束判断是否没有泊入开始录入车牌号否是结束判断是否没有泊入开始录入车牌号否是判断是否有空车位否是停车图4-SEQ图_4_-\*ARABIC2车主泊车记录模块流程图车主取车收费模块详细设计车主取车:录入已停车牌,模拟取车操作,同时结算停车费。车主取车收费模块流程图如图4-3所示。开始开始录入车牌号判断是否已经泊入否是计算停车费取车结束图4-SEQ图_4_-\*ARABIC3车主取车收费模块流程图车位查看模块详细设计车位查看模块:浏览查看当前停车场所有车位状态。车位查看模块流程图如下图4-4所示。开始点击查询开始点击查询判断是否有车位否车位概览结束图4-SEQ图_4_-\*ARABIC4车位查看模块流程图车位状态设置模块详细设计车位状态设置模块:管理员新增车位、管理员删除车位。车位状态设置模块管理员新增车位流程图如下图4-5。开始开始选择新增的区域判断是否存在该区域新增这个区域新增车位结束否是图4-SEQ图_4_-\*ARABIC5管理员新增车位流程图车位状态设置模块管理员删除车位流程图如下图4-6。开始开始选择要删除的车位判断是否存在该车位删除车位结束否是图4-SEQ图_4_-\*ARABIC6管理员删除车位流程图当月收入模块详细设计当月收入模块:结算当月停车费收入。当月收入模块流程图如下图4-7。开始开始查询当月收入判断是否存在收入计算收入结束否是图4-SEQ图_4_-\*ARABIC7当月收入模块流程图数据库设计数据库设计,分为数据库关系模型设计和数据库逻辑结构设计。数据库关系模型设计数据项和数据结构如下:车位信息车位信息包含有(序号Id,车位号,车牌号,车位区域,状态码)5个信息。车位信息E-R图如图8所示。车位信息车位信息序号车位号车牌号车位区域状态码图4-SEQ图_4_-\*ARABIC8车位信息E-R图停车信息停车信息包括(序号,花费,驶离时间,车位号,车牌号,泊车时间)6个信息停车记录E-R图如图9所示。停车信息停车信息序号花费驶离时间车位号车牌号泊车时间图4-SEQ图_4_-\*ARABIC9停车记录E-R图管理员信息:管理员信息包括有(序号ID,用户名,密码)这三个信息。用户信息E-R图如图10所示。用户信息用户信息序号ID用户名密码图4-SEQ图_4_-\*ARABIC10用户信息E-R图(4)收费标准信息:收费标准E-R图如图11所示。停车信息停车信息序号ID费用图4-SEQ图_4_-\*ARABIC11收费标准E-R图数据库逻辑结构设计数据项和数据结构如下:车位信息表车位信息表如下表1。表4-SEQ表_4_-\*ARABIC1车位信息表列名数据类型允许空主键说明idint否是序号parkingidvarchar否否停车位号platenumbervarchar是否车牌号regionvarchar否否车位区域statusint否否车位状态停车记录表停车记录表如下表2。表4-SEQ表_4_-\*ARABIC2停车记录表列名数据类型允许空主键说明idint否是序号costfloat是否停车费用endtimedatetime是否取车时间parkingidvarchar否否停车位号platenamevarchar否否车牌号starttimedatetime否否泊车时间管理员信息表管理员信息表如下表3。表4-SEQ表_4_-\*ARABIC3管理员信息表列名数据类型允许空主键说明idint否是序号usernamevarchar否否登录名passwordvarchar否否密码收费标准表收费标准表如下表4-4。表4-SEQ表_4_-\*ARABIC4收费标准表列名数据类型允许空主键说明idint否是序号priceint是否收费标准本章小结本章通过对整个系统,从车位到财务两个大模块的分析,延展至车主泊车、车主取车、状态设置、状态查看;各车停车费用、当月收入等六个子模块及功能。通过程序流程图可以十分方便的展示所有的模块的具体情况。并通过ER图的构建,较为系统的分解出了系统的主要功能和数据模块。在此基础上,可以高效地规划和设计出系统所需要的数据字典和数据库结构,一共构建了4张表其中有车位信息表,停车记录表,管理员信息表,收费标准表。同时,也让开发人员对整个系统的功能设计和需求掌握得更加透彻,大幅提升了开发效率。系统实现本章节主要的内容是这个停车管理系统的设计与实现,其中包括对各个模块的实现和他实现后的界面样式。管理员登录页面该页面为系统管理员登录页面,当管理员输入的账号密码正确无误,方可进入管理系统进行操作。界面如下图5-1所示。图5-SEQ图_5_-\*ARABIC1管理员登录页面其主要的页面代码如下:<formaction="adminService"><tdwidth="50"height="63">账号:</td><tdwidth="149"><inputtype="text"name="admin.username"/></td><tdwidth="50">密码:</td><tdwidth="150"><inputtype="password"name="admin.password"/></td><tdwidth="70"><inputtype="submit"value=""style="width:104px;height:50px;border:none;background:url(/parking/images/land.gif)righttopno-repeat;"></td></form>其主要的实现代码如下:publicStringexecute()throwsException{ AdminadminLogin=this.adminService.loginAdmin(this.admin); if(adminLogin!=null){ HttpServletRequestrequest=ServletActionContext.getRequest(); HttpSessionsession=request.getSession(); session.setAttribute("admin",adminLogin); return"loginSuc";} returnINPUT;}在这里如果密码输入错误的话,将无法进入主页面中,一直在这页面。主页面这个页面是一个十分简洁的页面,在这个页面上管理员可以非常方便的去选择他所要进行的项目,其中有车位管理(可以浏览车位情况,查看车位,增删车位)、停车记录(可以非常方便的去查看停车记录)、停车、取车、财务管理(可以方便地去查看当月收入),通过跳转到其他页面管理员可以非常方便地去完成一个又一个的任务。在这个页面上是由头页面和尾页面加上主体构成这个页面的。主体的地方是由各个功能模块(车位管理、停车记录、停车、取车、财务管理)的按钮构成的。其页面的样式如下图5-2。图5-SEQ图_5_-\*ARABIC2主页面车位管理模块停车位概览模块是对于车位概况的预览,通过表格的形式将每个车位的信息都完整地展示在网页,可以非常方便让管理员实时且直观地掌握停车场当前各车位状况。其主要的样式如下图:图5-SEQ图_5_-\*ARABIC3车位管理在这个页面中还有对于车位管理的操作删除车位和增加车位,其中删除车位的操作是对于其中的车位直接进行删除操作,而增加车位的操作是选中其中所要添加的区域,系统会自动帮你添加车位的。其中重要的代码段如下:添加车位的主要实现代码:publicvoidaddParking(Parkingparking){List<Parking>parkings=this.parkingDao.getParkingsByCol(parking.getRegion());StringlastID=parkings.get(parkings.size()-1).getParkingId();IntegerlastNum=Integer.valueOf(lastID.substring(1));ParkingnewParking=newParking();newParking.setParkingId(parking.getRegion()+String.valueOf(++lastNum));newParking.setStatus(1);newParking.setRegion(parking.getRegion());this.parkingDao.saveParking(newParking);}删除车位的主要实现代码:publicvoiddropParking(Parkingparking){this.parkingDao.removeParking(parking);}停车记录模块停车记录模块:在这个页面中,你可以浏览一下曾经在我们停车场停泊过的车辆的信息,比如说车辆的车牌号、所停车位、进入、离开时间、停车花费等五项信息。这些信息可以一目了然的在页面上显示出来。其主要的样式如下图:图5-SEQ图_5_-\*ARABIC4停车记录图其主要的实现代码如下:publicStringexecute()throwsException{ Maprequest=(Map)ActionContext.getContext().get("request"); request.put("list",this.recordService.getRecords()); returnSUCCESS;}停车模块当一辆汽车驶入停车场时,管理员录入车牌号,泊车计时开始。页面自动刷新,可以在下面的车位列表中看到这个车牌号。其主要的样式如下图:图5-SEQ图_5_-\*ARABIC5停车模块图其主要的代码如下:publicStringexecute()throwsException{ StringplateNumber=this.parking.getPlateNumber();if(this.parkingService.getParkingByPlate(plateNumber)!=null){return"fail2";}if(this.parkingService.getFreeParkingNum()==0){return"fail3";}this.parkingService.park(parking);returnSUCCESS;}publicvoidpark(Parkingparking){List<Parking>freeParkings=this.parkingDao.getFreeParkings();Randomrandom=newRandom();intparkingID=random.nextInt(freeParkings.size());//随机选择的此次停车的车位ParkingselectedParking=freeParkings.get(parkingID);//更新停车位状态selectedParking.setStatus(2);selectedParking.setPlateNumber(parking.getPlateNumber());this.parkingDao.updateParking(selectedParking);//创建停车记录Recordrecord=newRecord();record.setParkingId(selectedParking.getParkingId());record.setPlateName(parking.getPlateNumber());Timestamptime=newTimestamp(System.currentTimeMillis());record.setStartTime(time);this.recordDao.saveRecord(record);}在这个模块中如果你输入的车牌号已经存在的话,这个系统会提示你这个车辆已经停入了,请重新重新输入。当你输入车牌号时,这些车位都是处于被占的状态时,系统会提示你,车位已满,请等待。取车模块当车辆要驶离停车场时,管理员录入车牌号,泊车计时停止。页面自动刷新,可以在上面看到这个订单的信息,及其所需要支付的花费。其主要的样式如下图:图5-SEQ图_5_-\*ARABIC6取车其主要实现代码如下:publicStringexecute()throwsException{ StringplateNumber=this.parking.getPlateNumber();Parkingparks=this.parkingService.leave(plateNumber);if(parks==null){return"fail1";}returnSUCCESS;}publicParkingleave(StringplateNumber){ParkingoccupiedParking=this.parkingDao.getParkingByPlateNumber(plateNumber);if(occupiedParking==null){returnnull;}occupiedParking.setStatus(1);occupiedParking.setPlateNumber(null);this.parkingDao.updateParking(occupiedParking);Recordnewrecord=this.recordDao.getUnsettledRecordByPlateNumber(plateNumber);Timestampnewtime=newTimestamp(System.currentTimeMillis());newrecord.setEndTime(newtime);longparkTime=System.currentTimeMillis()-newrecord.getStartTime().getTime();longparkHours=0;if(parkTime%(60*60*1000)==0){parkHours=parkTime/(60*60*1000);}else{parkHours=parkTime/(60*60*1000)+1;}Priceprice=this.priceDao.findAllPrice().get(0);longcost=price.getPrice()*parkHours;newrecord.setCost(cost);this.recordDao.updateRecord(newrecord);returnoccupiedParking;}当你输入的车牌号没有时,系统会提示你,这个车辆并没有停入我们停车场。财务管理模块在这个模块中,管理员可以非常方便的对各个月的收入进行汇总,方便查询收入情况。其主要的样式如下图:图5-SEQ图_5_-\*ARABIC7财务管理其主要实现代码如下:publicStringexecute()throwsException{ List<Cost>newPrice=newArrayList<Cost>(); Costprice=newCost(); price.setCost(this.priceService.getTotalIncome()); newPrice.add(price); this.priceService.getTotalIncome(); Maprequest=(Map)ActionContext.getContext().get("request"); request.put("list",newPrice); returnSUCCESS;}本章小结本章主要介绍了停车管理系统的系统实现及各功能模块的展示,非常简洁地对各个界面及其主要的实现方法进行了展示。通过这个章节,可以十分方便的对整个系统有一个大致的了解和对于这个系统的操作有了一定的了解。首先要通过管理员登录页面登录系统才能对整个系统进行操作,然后在主页面上选择你所需要进行的模块,然后点击进入该模块,通过这个模块的介绍,完成该模块的操作。测试、总结与展望本章对系统的测试和这次设计工作的总结和对创新点的说明,并对这个系统中所需要的进一步的研究和改进之处。软件测试软件测试在整个软件的生命周期中是一个非常重要的环节,它是保证这个软件的正确性、可靠性和完整性的重要环节。软件测试的工作是一个和整个软件工程的开发阶段都是息息相关的。软件测试的目标是为了发现程序中所发现的错误或是整个软件在执行过程中从未发生过的错误。软件测试是一个非常严谨的事情。所有的测试都要追溯到用户的需求上,并且要不断地,尽早的测试,在大型的软件开发或是企业级的开发过程中软件的测试是由专业机构来负责的。软件测试的原则在软件测试中我们要遵从一系列的测试原则以保证这个测试是可行有效的,我在这次测试的方面是用的白盒测试。以下是一些测试时应当遵循的原则:测试是显示软件中缺陷的存在,但是没有测试出缺陷并不代表这个软件就没有缺陷。穷尽测试是不现实的事情,他是不可能实现的事情。整个软件测试中会碰到一系列的问题,它会产生无穷无数个测试数据,这是个天文数字,所以说每个测试都只是抽样测试。测试要尽早介入,在软件开发早起介入软件测试可以非常好的提高软件质量,降低软件成本。软件缺陷的集群性,在整个软件中缺陷大都是集中出现在这个软件的一小部分地方,所以一旦发现错误较多的模块对于错误处要反复、深入的测试。测试应当要符合整个软件的需求。测试要尽可能的贯穿于整个生命周期。编程人员不能去测试自己的程序。要预先估计好输出结果。测试的例子应当要兼顾有效和无效这两种不同的输入方法。检查一个程序是否存在完成所有功能后产生的意料之外的副作用。所有的测试应当是在假设整个程序是有错误的情况下进行的。单元测试在现在的所有的软件开发过程当中,测试已经不再是作为一个独立的软件开发的周期,这个单元测试是和整个代码的编写过程是同步进行的一个开发活动。而且单元测试能够对提高程序员对整个程序的信心有着非常好的帮助,并且有着非常大的帮助对于程序的质量、加快代码的编写速度、软件的开发时间,而且可以让整个软件都变的易于维护。单元测试是一种很低级的测试方法在整个软件开发和软件测试过程当中。因为在整个测试过程中,单元测试是在软件的独立测试单元将它与其他的部分进行了隔离在这样的情况下进行了测试。集成测试集成测试是软件测试过程中的所有的模块都搭建完整后进行的整体模块测试。这个测试是在各个模块都完成了以后,并且都通过了测试的基础上,将各个模块链接起来进行测试,力求发现在设计阶段所埋下的隐患,在整个测试过程中,我需要将所有的系统功能和所有的功能特性都考虑到,放在整个测试计划中,并加以测试:比如数据库的装载等方面的测试情况,系统接口(无论内部接口还是外部接口的测试),输入错误状态时点时系统处理的测试,将系统完全装载好后进行运行的测试,以及系统安全的测试等等。通过实践表明,虽然一些模块在被隔离开后可以单独地进行工作,但这样并不能够保证这些模块取消隔离连接起来也能一样的正常工作。有些在局部的时候不能反映出来的问题,在全局测试的时候却很可能会暴露出来的。集成测试是一种非常正规的一种测试的过程,在测试之前必须要对整个测试制定一个完整的计划,并与单元测试的完成时间协调起来。白盒测试白盒测试是系统测试中的一种比较常见的一种测试手段,这种测试又可以称之为结构测试、逻辑驱动测试。白盒测试是用测试用例设计的方法来进行系统测试的一种方法,这种测试就像在那里查看一个盒子(系统),可以非常方便的去观察这个盒子的内部有什么东西、他是如何进行运作的,白盒测试就需要测试员十分全面了解整个程序内部逻辑结构、以方便他对整个系统中的所有逻辑的路径进行测试。所以说白盒测试也就是穷举路径测试方法了。测试总结在整个测试的过程中,我用管理员的身份登入系统,进行了一系列的操作,一共发现了这几个重要的错误缺陷点:(1)停车的存储过程中发生了错误,汉字存储到数据库中变成了乱码,原因是整个系统的编码格式和Tomcat服务器中没有一致,无法正常的将汉字用正常的格式通过后台的Hibernate传递到MySQL数据库中,所以这个修改的方法是将整个系统的编码格式都改成统一的编码格式,我是将他们都改成了UTF-8这个编码格式。(2)一开始编写代码时遇到了一个问题,在hibernate配置文档中parking,hbm.xml文档中的配置数据写错了,一开始操作时没有问题,但是到了后面的测试中发现数据库存储数据时发生了错误,没有存入到数据库中,后来检查了很久才找到这个在整个软件编程开始时埋下的“炸弹”,所以这样的惨剧告诉我们,软件的编程过程中一个好的测试意识是非常重要的,测试越早的介入到软件的开发过程中可以更早的发现问题,可以节省很大一部分时间和成本。系统实施与维护系统实施阶段包括了程序和系统调试:(1)程序调试:调试程序中是不是有逻辑错误,语句错误。包括语法调试和逻辑检查,在逻辑检查的过程中,需要测试员输入几组数据,这几组数据分为两类一类是有错数据,一类是正确数据,通过输入这两类数据检测程序的正确性,例如在登陆界面中输入一组正确的用户名密码和一组错误的用户名密码,若前者可行后者报错说明程序正确,反之,则程序出错需要调整。(2)功能测试:按功能模块进行测试,进行功能模块测试的目的是为了保证模块内部控制关系正确以及数据处理内容正确。(3)系统调试:系统调试主要是包含了两个调试方面:一个是主调控程序测试,二是系统程序的总调,这个调试的检测的内容是在于检查控制通路是否正常工作和数据传递的正确性。最后关于系统维护。系统维护是系统研制生命周期的最后阶段,主要是为了对系统进行必要的修改和调整,以及对于整个系统进行检查、监测和控制,这样可以很好的尽快的发现问题,排除问题。本系统的维护主要是包括三个方面:硬件维护、软件维护和数据维护,硬件维护,顾名思义,就是对运行给管理系统的机器进行日常维护,软件维护是在系统运行过程中对其运行效率进行记录,随后针对其运行效率进行相应的维护措施,保证系统能正常有效的继续运行,数据维护实在系统运行时,对其产生的数据进行维护。数据维护是一个不断更迭持续的过程,是为了不断满足新的需求,增加新的应用,完善和修改系统的一个过程。本文总结这篇论文主要是一篇基于JavaforWeb技术的停车管理系统,探讨了用eclipse系统集成SSH框架技术来分析和开发该停车管理系统。实现基于J2EE平台开发WEB版停车场管理系统,基本地实现了一般规模的停车管理系统所需要的服务。这个系统的开发与设计是采用了MVC的开发设计模式,这个设计模式是把整个系统应用给统一的分成三个不同的模块:模型、视图和控制器,让他们在系统中分担着不同的任务。从而让整个系统从结构的角度上看起来思路清晰,也十分方便的对整个系统进行改进和维护。这个系统是采用B/S系统,只要将整个服务全都部署到web服务器Tomcat上,我们只要开启了服务器,如果我们想要浏览系统,只要打开浏览器,输入网址,就可以登录这个网站来使用这个服务。在整个停车管理系统中停车、取车收费是一个非常重要的一个模块,在利用程序来实现了这个基于标准的收费标准来进行收费。本系统目前还有许多的缺陷和不做,希望在后面的使用过程中来进行改进和完善。根据以后系统在运行过程中出现的问题,在系统性能、功能完善方面进一步加强。展望在停车场中可以引入分布式智能监控系统,实现了停车场管理的系统化、规范化和自动化,便于管理人员、现场操作员和车主进行准确、及时、直观的控制和管理工作,提高了工作效率和经济效益,满足了智能建筑和现代交通发展的需要。在停车入库或是取车出库时,采用更先进的智能车牌识别技术,可以非常方便管理人员和驾驶员。这个系统还可以试着在手机端开发一个预约系统,现在的智能手机可以说是人手一部,而且现在的大城市里的停车难问题也十分突出,如果出一个手机端的预约系统,可以十分方便地告诉使用者附近是否有停车场,停车场是否有停车位,这样使整个停车系统变得十分的强大。另外这个系统还可以引进现在十分流行的网上支付功能,这样可以大大的方便那些司机们,也可以解决那些只爱带手机的驾驶员们的苦恼。以上就是我对于整个停车管理系统的一些展望。感想一转眼的时间,大学四年的时间已经走到了尾声。这次的停车管理系统是我独立自主完成的一次系统设计与实现,这也是我自己在大学最后的时候交给老师们也是给我自己的一份答卷。这份答卷虽然不是那么的完美,也谈不上什么精致,但是这次的系统设计与实现却是包含了我这个大学四年所学到的绝大部分的知识、概念和我自己的理解,另外,这次的设计也是我这一整个学期的努力成果。通过这一次的完整设计,非常好的巩固了我再大学四年所学到的知识,也很好地磨炼了我对于遇到真实问题的解决能力。同时,这个毕业设计也极大的提高了我对于资料的收集能力和对于文献的查找能力,在这次的毕业设计过程中,我的整个软件工程的设计与实现能力都得到了前所未有的锻炼,丰富了我的实践经验,为我以后的工作打下非常大的基础。在这个毕业设计中,我发现我可以非常镇定的坐在电脑前认真的去浏览文献和去实现系统,一坐就是7,8个小时,这恐怕也是这个毕业设计的一部分吧。虽说整个毕业设计的内容不少,查询,书写的文档也很多,但是我对于这个毕业设计却是更加享受这个设计的过程,因为在整个繁琐的过程当中,让我收获良多。各种系统的适用条件,软件的使用限制,各种编程的架构,语句的使用方法,后台的编写。在随着我的深入设计和不断完善的过程当中,我发现以往所学的那些一知半解的内容正在飞快地了解,不懂的知识在不断的学习。在和老师的沟通中更是让我眼界开拓。老师对我的耐性教导,和正确的思路引导也让我对设计有了新的灵感。在整个的设计过程中,我遇到了许许多多、形形色色的问题,通过这次的毕业设计也让我提前接触并解决这些问题,也能让我以后在工作中遇到这些问题不再手忙脚乱,无力着手,无从应对了。在设计中有些小小的改动会关联到整个系统的运行,这点让我很是头痛,由于开始定好的设计思路和实际遇到的运行问题,有时真的让我进退两难,不知所措。于是我请教其他同学,他们为我提供建议,提出解决方案,我自己也变通的解决一些棘手的问题,这才撬走了一块块阻碍我前行的巨石,让我能继续向前。通过解决这些棘手的难题也让我的思路更加清晰,看待问题的角度更加多面,让我跳出了以前狭隘的思考范围,从而能够从大局思考问题,解决问题。这次设计对我的提高是有限的也是全面的,真是这一次设计让我积累了许多实际经验,是我的头脑更好的被知识武装起来,查漏补缺,打上了一个个以前被我忽视的“补丁”填上了一个个漏洞。这样也是一定会让我在接下来的工作学习过程中,可以拥有对于问题的更强的应用能力,以及和同事、领导的更强的沟通力和对于知识的理解力。从不知道毕业设计的论文是怎么写的,到现在更是可以非常顺利地按时地将本次毕业设计完成,这个了我很大的信心,让我了解专业知识的同时也对自己未来在本专业上的发展充满信心。回顾这次的毕业设计,我知道自己还有很多不足,对于这次的设计我也还有很多的想法没有来得及去一一实现。学无止境,人的创作力也会真跟着自己的学到的知识而又不断地长进。对于这些留下来的遗憾,我现在暂时无法去解决,但是我不会气馁,也不会放弃,我会更加关注这方面的知识,弥补这方面的空白。IT行业在如今的社会上还算是比较红的行业,当然有很大的提上空间,我作为新生的一代有义务也有责任让它继续发展,所以需要我继续学习,争取早日掌握更先进的技术和知识,为祖国,为社会出一份力。致谢经过了3个多月的时间,这篇毕业设计论文终于接近了尾声,在整个毕业设计过程中,因为我的知识储备的不足和经验的欠缺,给整个毕业设计带来非常多的不利影响,在我不断的修改,完善,慢慢地让该系统趋向成熟。在本系统的设计过程和论文编写过程中,很多老师、同学和朋友都给与了我许多无私的帮助,尤其是我的导师Xxx给我的论文提出了很多宝贵的修改意见,在这里,我向这些无私帮助我的人表示衷心的感谢。在此次毕业设计中,指导老师对我严格要求、耐心教导,使我顺利完成了设计。并帮我将所学的知识融会贯通、综合应用。还在停车管理系统的理论方面给了我很多的指导,特在此表示衷心的感谢!由于我的学术水平有限,所写论文难免有不足之处,恳请各位老师和学友批评和指正!参考文献[1]刘文利;国内停车场管理系统的现状与发展趋势;中国新技术新产品;2011年第1期[2]Gallardo,Raymond,;TheJavatutorial:ashortcourseonthebasics;2016[3]Horstmann,CayS.,CoreJava.fundamentals=Java核心技术.卷I,;基础知识东南大学出版社;2016[4]李刚;轻量级JavaEE企业应用实战:Struts2+Spring4+Hibernate整合开发(第4版);电子工业出版社;2014.10[5]RonaldBradford,ChrisSchneider著;李雪锋,陈健鸿译;EffectiveMySQL之深入解析复制技术;清华大学出版社;2014[6]程朝斌,张水波;MySQL数据库管理与开发实践教程;清华大学出版社;2016[7]贾蓓,镇明敏,杜磊;JavaWeb整合开发实战:基于Struts2+Hibernate+Spring;清华大学出版社;2013[8]张海藩,牟永敏;软件工程导论;清华大学出版社;2013[9]董健全,丁宝康;数据库实用教程;清华大学出版社;2013[10]马向林,赵林强;Struts2开发从基础到应用;清华大学出版社;2014[11]孙连伟,武迪;Struts2程序开发实用教程;清华大学出版社;2014附录:部分源程序清单//主页面代码<%@pagelanguage="java"import="java.util.*"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><%Stringpath=request.getContextPath();%><html><head><metahttp-equiv="Content-Type"content="text/html;charset=UTF-8"><title>JParking停车管理系统--首页</title><linktype="text/css"rel="stylesheet"href="css/style.css"></head><body><tablewidth="100%"height="100%"border="0"cellpadding="0"cellspacing="0"><tr><tdalign="center"><jsp:includepage="top.jsp"flush="true"/> <tablewidth="801"height="48"border="0"cellpadding="0"cellspacing="0"background="images/center1.jpg"><tr><tdvalign="top"><tablewidth="494"><tr><tdwidth="45"height="25"> </td><tdwidth="437"valign="bottom"><fontcolor="#FF0000">首页面</font></td></tr></table></td></tr></table><tablewidth="801"height="436"border="0"cellpadding="0"cellspacing="0"background="images/center2.jpg"><tr><tdheight="243"><tablewidth="547"align="center"><tralign="center"><tdwidth="261"height="100"><ahref="/parking/authorityAdmin/listParking.action"><imgsrc="images/addParking.gif"width="175"height="33"border="0"></a></td><tdwidth="274"><ahref="/parking/authorityAdmin/listRecord.action"><imgsrc="images/record.gif"width="175"height="33"border="0"></a></td></tr><tralign="center"><tdheight="100"><ahref="/parking/authorityAdmin/listPark.action"><imgsrc="images/parking.gif"width="175"height="33"border="0"></a></td><td><ahref="/parking/authorityAdmin/listRec.action"><imgsrc="images/leave.gif"width="175"height="33"border="0"></a></td></tr><tralign="center"><tdheight="100"><ahref="/parking/authorityAdmin/income.action"><imgsrc="images/price.gif"width="175"height="33"border="0"></a></td></tr></table></td></tr></table> <jsp:includepage="down.jsp"flush="true"/></td></tr></table></body></html>//ParkingServiceImplpackageegration.service.impl;importjava.sql.Timestamp;importjava.util.ArrayList;importjava.util.HashMap;importjava.util.List;importjava.util.Map;importjava.util.Random;importegration.entity.*;importegration.service.ParkingService;importegration.dao.*;publicclassParkingServiceImplimplementsParkingService{privateParkingDAOparkingDao;privateRecordDAOrecordDao;privatePriceDAOpriceDao; publicParkingDAOgetParkingDao()

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论