相关资料.doc

基于RFID的停车场管理系统的设计与实现【带程序】

收藏

压缩包内文档预览:
预览图 预览图 预览图 预览图
编号:273429    类型:共享资源    大小:3.33MB    格式:RAR    上传时间:2014-04-28 上传人:上*** IP属地:江苏
45
积分
关 键 词:
基于 rfid 停车场 管理 系统 设计 实现 程序
资源描述:

基于RFID的停车场管理系统的设计与实现

54页 15000字数+说明书+任务书+开题报告+停车场管理系统程序

任务书.doc

停车场管理系统程序.rar

划周记进度检查表.xls

基于RFID的停车场管理系统的设计与实现开题报告.doc

基于RFID的停车场管理系统的设计与实现论文.doc

相关资料.doc

目  录

摘  要III

AbstractIV

目  录V

1 绪论1

1.1 停车场管理系统及概述1

1.1.1 系统研究现状与发展趋势1

1.1.2 本课题的研究意义2

1.2 开发语言及相关技术简介3

1.2.1 JAVA语言简介3

1.2.2 JSP与Servlet介绍3

1.2.3 JavaBean简介4

1.2.4 RFID技术5

1.2.5 使用到的开发工具5

2 需求分析7

2.1 系统需求7

2.2 功能需求7

2.3 业务流程图7

3 系统设计11

3.1 系统总体模块设计11

3.2 系统子模块设计11

4 数据库设计15

4.1 数据库管理系统概述15

4.2 E-R图设计15

4.3 数据库物理设计19

5 系统实现23

5.1 系统架构及RFID技术的设计23

5.1.1 系统架构的设计23

5.1.2 RFID技术的设计23

5.2 数据库连接和访问的实现23

5.3 系统登录功能的实现24

5.4 主窗体的实现25

5.5 管理员模块的实现27

5.5.1 一般管理员添加27

5.5.2 管理员信息一览28

5.5.3 修改管理员信息29

5.5.4 删除管理员信息30

5.6 收费管理中心31

5.6.1 修改收费标准31

5.6.2 查看收费日志33

5.6.3 查看收费明细34

5.7 停车信息管理35

5.8 付费管理37

5.8.1 添加收费信息37

5.8.2 付费计算和修改车位信息39

5.9 收银日志管理41

6 结论与展望43

致  谢45

参考文献46

附  录47


1 绪论

1.1 停车场管理系统及概述

  1.1.1 系统研究现状与发展趋势

   智能停车场管理系统是现代化停车场车辆收费及设备自动化管理的统称。是将停车场完全置于计算机统一管理下的高科技机电一体化产品。他以感应卡IC卡或ID卡(最新技术有两卡兼容的停车场)为载体,通过智能设备使感应卡记录车辆及持卡人进出的相关信息,同时对其信息加以运算、传送并通过字符显示、语音播报等人机界面转化成人工能够辨别和判断的信号,从而实现计时收费、车辆管理等目地。

   中国智能停车场管理系统的市场现状比较落后,大大落后于动态交通的智能化市场发展,这一点国内外都存在这样的问题,过去的发展重动态交通,而轻静态交通,比如静态交通研究目前国内外都没有一个评价指标,而动态交通则有道路拥堵指数、绿波带等研究内容。静态交通发展的落后,已经成为了城市动态交通的障碍,目前国内外的专家提出了解决动态交通要“动静结合、以静制动”的理论,在实践中已经初见成效。未来静态交通智能化市场和动态交通智能化市场应该平分秋色,不分伯仲,静态交通智能化市场的发展前景非常大。

   (1)目前国内的停车场智能化市场的问题是

   ① 从业公司小而散,有几千家从业公司,合计市场份额只有十几亿元左右,缺乏领导型的标杆企业,这也是任何一个市场发展初期的标志。

企业研发投入小,同质化竞争严重,低质低价恶性竞争,企业利润低,没有发展

后劲。

   ③小企业寿命短,两三年就倒闭,倒闭后重新搞个公司再来,不重视品牌和商业信誉,盲目打低价,扰乱市场秩序,导致竞争一片红海。而国外的成熟市场很少有这样的情况,很多企业都从业了几十年,保证一定的利润,市场专业化程度很高,技术研发投入较高,产品质量好、可靠性高、寿命长,这是我国停车场智能化市场未来的发展方向。

   (2)国外品牌对国内市场的影响

   国外的产品和技术虽然成熟,但是国内外的停车环境差别较大,国外的产品未必能适应国内的需求。如,国内城市大、人口多、建筑物体量大、停车场车位多、停车场之间的间距大等,再加上国内的人员文明素质较低,停车场还要负责车辆的安全,所以,要求智能管理系统要能实现防盗、车位引导、反向寻车、车牌识别对比、快速出入、多费率、多功能停车卡等要求,国外的产品很难适应。

   还有,国内产品价格低,国外价格高,竞争力不强。所以国外产品在国内市场空间并不大。

   国外的产品和技术进入中国,会带来一些先进的技术和管理的理念,促进技术交流,并带动部分国内产品的出口,有一定的正面影响。负面影响基本没有。

   (3)智能停车场市场处于上升期

国内的智能停车市场发展了20多年,2000年以前属于起步阶段,大家学习国外的技术,攻克技术难题,当时城市中车辆和停车场也不多,市场容量有限,当时停车并不难


摘  要


   随着我国的汽车市场的高速发展,汽车对其配套设施尤其是停车场提出了更高的要求。为了降低运营成本,提高停车场的管理效率和服务质量,RFID(无线射频识别技术)和Web等技术被越来越多地被应用于停车场管理系统。

   本课题的主要目标是设计并实现一个基于RFID和Web技术的停车场管理系统。结合实践,作者了解了RFID的基本原理,掌握了初步的数据库和JSP动态网页开发技术,并使用My Eclipse开发环境和My SQL数据库管理系统实现了基于B/S结构的停车场管理系统。该系统主要利用了成熟的RFID读写技术,基于Java Bean、JSP、Servlet的MVC设计模型,JSP网络数据库访问技术,与My SQL关系型数据库管理系统来实现主要功能。

   该停车场管理系统的功能模块包括:超级管理员管理模块(用户管理,收费管理);一般管理员管理模块(车位管理、付费管理、收银管理)。该停车管理系统具有可靠性高、存储量大、保密性好、效率高、成本低等优点。


   关键词:停车场管理系统;RFID;My SQL数据库;JSP;Servlet

内容简介:
无锡太湖学院信 机系 计算机科学与技术 专业毕 业 设 计论 文 任 务 书一、题目及专题:1、题目基于RFID的停车场管理系统的设计与实现 2、专题 二、课题来源及选题依据 当今时代,计算机与互联网涉及到诸多领域,目前软件开发的目标是实现对数据信息快捷有效和使用的管理,人们越来越依赖用计算机辅助协调和管理租赁工作。随着生活水平的提高,汽车在城市的各个角无处不在,因此停车场合理的管理停车面临着严重的问题。 停车场管理系统是信息化发展与现实社会相结合的产物,各大中小城市都要对大量的车辆停车问题进行科学有效地管理。以往的停车场是利用纸制品来记录和管理停车问题,这样效率低而且容易出错。因此,设计一个基于RFID的停车场管理系统就显得非常重要,可以把大量的停车信息保存在系统中,及时有效,不仅提高了停车的效率,而且大大增加了信息的准确性,此系统具有很大的积极意义,前景广泛。停车管理系统具有快速、可靠性高、存储量大、保密性好、效率高、成本低等优点。 三、本设计(论文或其他)应达到的要求:掌握MySQL数据库、掌握JDBC数据库链接; 掌握Web开发相关技术、JSP技术; 此停车管理系统须实现一下几个模块:用户信息管理(包括超级管理员用户和普通管理员用户)、车位信息管理模块、收费信息管理模块等等。 四、接受任务学生: 计科94 班 姓名 蒋 鹏 五、开始及完成日期: 自2012年11月12日 至2013年5月25日六、设计(论文)指导(或顾问): 指导教师签名 签名 签名教研室主任学科组组长研究所所长签名 系主任 签名2012年11月12日I 存档编码:无无锡锡太太湖湖学学院院 2013 届届毕毕业业作作业业周周次次进进度度计计划划、检检查查落落实实表表 系别:信机系 班级:计科94 学生姓名:蒋鹏 课题(设计)名称:基于RFID技术的停车场管理系统的设计与实现 开始日期:2012年11月12号周次起止日期工作计划、进度每周主要完成内容存在问题、改进方法指导教师意见并签字备 注1-32012年11月12日-2012年12月12日教师下达毕业设计任务,学生初步阅读资料,完成毕业设计开题报告。按照任务书要求查阅论文相关参考资料,填写毕业设计开题报告书。对基础知识缺乏补充,查阅相关资料后确立目标方向。4-102012年12月3日-2013年1月20日指导专业实训参加专业实训,同时进一步查阅资料,学习相关技术知识,为后期论文做准备。学习过程中遇到一些技术障碍,通过和同学交流和上网查找后解决问题。11-122013年1月21日-2013年3月1日指导毕业实习完成实习期间的工作,熟悉企业在系统开发时的一般流程,增强相关专业知识。在实习期间不断学习新知识,虽遇到一些困难,但经他人帮助后得到了解决。132013年3月4日-3月8日毕业设计任务书填写指导收集有关该论文的资料,包括中外文献,书写毕业设计任务书。由于相关资料繁多,在书写任务书时确立了整个大方向。142013年3月11日-3月15日开发前准备工作指导由于设计开发需要大量的时间和精力投入,因此在开发前做好相应的准备工作,安装相应的开发工具。通过JSP技术和MyEclipse 技术。152013年3月18日-3月22日对课题研究的意义进行讲解了解系统在国内外的发展史,停车场管理系统设计规划。对课题研究不深,没有明确开发目标,但查阅相关文献后确立了相关目标。162013年3月25日-3月29日对系统开发流程进行指导熟悉系统开发流程,掌握系统要运用的相关技术,了解其工作原理。对相关技术把握不够,但在后期学习中得到了加深。172013年4月1日-4月5日开发工具及相关技术指导对整个开发工具进行了深入的认识,了解开发工具的界面、功能等,能熟练掌握并应用。不熟悉开发工具,一段时间摸索之后掌握了其用法。182013年4月8日-4月12日系统可行性研究指导按照可行性要求,将系统可行性分析经济、操作、技术、安全可行性,并逐一进行分析。缺乏多角度分析系统可行性,最后从以往的课程设计中找准思路,完成分析。周次起止日期工作计划、进度每周主要完成内容存在问题、改进方法指导教师意见并签字备 注192013年4月15日-4月19日系统需求分析、总体设计与规划指导了解需求分析的概念,对系统的功能和性能需求进行分析,确立整个开发需求,并进行设计。查阅资料之后对需求分析有了进一步了解。202013年4月22日-4月26日系统数据设计指导建立相关数据库,完成模块与数据库连接。选用SQL Server 2005作为数据库设计平台。212013年4月29日-5月3日系统开发及编写代码实现各个系统功能模块,完成代码编写,对整个系统进行测试。在代码编写过程中遭遇一些问题,如无法实现某些模块等功能,经老师指导后完成。222013年5月6日-5月10日调试及完善系统,撰写论文对系统进行各项测试并改进,列出论文提纲并撰写。论文中出现排版问题,经老师指导同学帮助后解决。232013年5月13日-5月17日撰写论文,修改论文撰写论文,修改论文。论文中存在问题很多,经查询后一一解决。242013年5月20日-5月24日答辩指导梳理整个毕业论文及相关资料,制作答辩PPT,为答辩做准备。不清楚答辩流程,后询问老师得知相关事宜。 说明: 1、“工作计划、进度”、“指导教师意见并签字”由指导教师填写,“每周主要完成内容”,“存在问题、改进方法”由学生填写。 2、本表由各系妥善归档,保存备查。无锡太湖学院毕业设计(论文)开题报告题目: 基于RFID技术的停车场管理 系统的设计与实现 信机 系 计算机科学与技术 专业学 号: 学生姓名: 指导教师: (职称:讲师 ) (职称: )2012年11月23日 课题来源基于RFID技术的停车场管理系统的设计与实现科学依据(1)课题科学意义本课题的目标是设计并实现一个基于RFID和JSB技术的停车场管理系统。停车场管理系统是信息化发展与现实社会相结合的产物,各大中小城市都要对大量的车辆停车问题进行科学有效地管理。以往的停车场是利用纸制品来记录和管理停车问题,这样效率低而且容易出错。因此,设计一个基于RFID的停车场管理系统就显得非常重要,可以把大量的停车信息保存在系统中,及时有效,不仅提高了停车的效率,而且大大增加了信息的准确性,此系统具有很大的积极意义,前景广泛。停车管理系统具有快速、可靠性高、存储量大、保密性好、效率高、成本低等优点。(2)国内外发展现状与趋势及其发展前景目前国内的停车场智能化市场的问题是:从业公司小而散,有几千家从业公司,合计市场份额只有十几亿元左右,缺乏领导型的标杆企业,这也是任何一个市场发展初期的标志。小企业寿命短,两三年就倒闭,倒闭后重新搞个公司再来,不重视品牌和商业信誉,盲目打低价,扰乱市场秩序,导致竞争一片红海。而国外的成熟市场很少有这样的情况,很多企业都从业了几十年,保证一定的利润,市场专业化程度很高,技术研发投入较高,产品质量好、可靠性高、寿命长,这是我国停车场智能化市场未来的发展方向。国外品牌对国内市场的影响国外的产品和技术虽然成熟,但是国内外的停车环境差别较大,国外的产品未必能适应国内的需求。如,国内城市大、人口多、建筑物体量大、停车场车位多、停车场之间的间距大等,再加上国内的人员文明素质较低,停车场还要负责车辆的安全,所以,要求智能管理系统要能实现防盗、车位引导、反向寻车、车牌识别对比、快速出入、多费率、多功能停车卡等要求,国外的产品很难适应。还有,国内产品价格低,国外价格高,竞争力不强。所以国外产品在国内市场空间并不大。研究内容掌握MySQL数据库、掌握JDBC数据库链接; 掌握Web开发相关技术、JSP技术; 此停车管理系统须实现一下几个模块:用户信息管理(包括超级管理员用户和普通管理员用户)、车位信息管理模块、收费信息管理模块等等。 拟采取的设计方法及可行性分析(1)设计方法通过JSP和JavaBean的模型结构,同时还需要Servlet技术来实现三层(MVC模型)中的视图与业务逻辑之间的功能。JSP作为View层,负责生成交互后返回的界面。而Servlet作为Controuller层,负责处理HTTP请求,而通过JavaBean来负责访问数据库。(2)可行性分析 MVC模型是一种采用基于模型视图控制器(Model和View和Controller)的设计模型。该模型将JSP程序刀锋功能分为Model(模型)层,View(视图)层和Controller(控制器)层的三个层次。 通过JSP,JavaBean和Servlrt等相互合作,真正实现了表示层,业务逻辑层和数据的分离。研究计划及预期成果研究计划:2012年11月12日-2012年12月12日:按照任务书要求查阅论文相关参考资料,填写毕业设计开题报告书。2013年1月21日-2013年3月1日:填写毕业实习报告。2013年3月4日-2013年3月8日:按照要求修改毕业设计开题报告。2013年3月11日-2013年3月15日:学习并翻译一篇与毕业设计相关的英文材料。2013年3月18日-2013年5月3日:停车场管理系统分析,程序设计与系统测试等等。2013年5月6日-2013年5月17日:毕业论文撰写和修改工作。预期成果:建立一个较为基础的停车场管理系统,同时加深对JSP技术的运用于实践操作,熟知数据库的运用。对停车场的的收费系统的尽可能完善,尤其对当下时间的自动生成,以能自动生成当下的收费明细。以人工来模拟RFID的自动录入。特色或创新之处 运用JSP技术来支撑整个系统的运作。 通过JavaBean来访问数据库,Servlet负责处理HTTP请求。已具备的条件和尚需解决的问题 对数据库的建立与运用有把握。对JSP技术的熟悉与认知还有运用程度有待加强,对Servlet的理解与运用要加强。指导教师意见 指导教师签名:年 月 日教研室(学科组、研究所)意见 教研室主任签名: 年 月 日系意见 主管领导签名: 年 月 日编编 号号无锡太湖学院毕毕业业设设计计(论论文文)题目:题目: 基于基于 RFID 技术的停车场管理技术的停车场管理 系统的设计与实现系统的设计与实现 信机 系系 计算机科学与技术 专专 业业学 号: 学生姓名: 指导教师: (职称:讲师) (职称: )2013 年 5 月 25 日无锡太湖学院本科毕业设计(论文)无锡太湖学院本科毕业设计(论文)诚诚 信信 承承 诺诺 书书本人郑重声明:所呈交的毕业设计(论文) 基于 RFID的停车场管理系统的设计与实现 是本人在导师的指导下独立进行研究所取得的成果,其内容除了在毕业设计(论文)中特别加以标注引用,表示致谢的内容外,本毕业设计(论文)不包含任何其他个人、集体已发表或撰写的成果作品。 班 级: 计科 94 学 号: 0921134 作者姓名: 2013 年 5 月 25 日I摘摘 要要随着我国的汽车市场的高速发展,汽车对其配套设施尤其是停车场提出了更高的要求。为了降低运营成本,提高停车场的管理效率和服务质量,RFID(无线射频识别技术)和 Web 等技术被越来越多地被应用于停车场管理系统。本课题的主要目标是设计并实现一个基于 RFID 和 Web 技术的停车场管理系统。结合实践,作者了解了 RFID 的基本原理,掌握了初步的数据库和 JSP 动态网页开发技术,并使用 My Eclipse 开发环境和 My SQL 数据库管理系统实现了基于 B/S 结构的停车场管理系统。该系统主要利用了成熟的 RFID 读写技术,基于 Java Bean、JSP、Servlet 的MVC 设计模型,JSP 网络数据库访问技术,与 My SQL 关系型数据库管理系统来实现主要功能。该停车场管理系统的功能模块包括:超级管理员管理模块(用户管理,收费管理);一般管理员管理模块(车位管理、付费管理、收银管理)。该停车管理系统具有可靠性高、存储量大、保密性好、效率高、成本低等优点。 关键词:关键词:停车场管理系统;RFID;My SQL 数据库;JSP;ServletIIAbstractWith the high speed development of automobile in China, it raises the higher requirement for supporting facilities, especially parking slots. In order to reduce operating costs and improve management efficiency and service quality of parking slots, RFID (Radio Frequency Identification) and Web technologies have been adapted for parking management system more and more.The main purpose of the thesis is to design and implement a parking slots management system based on RFID and Web technologies. Combining theory with practice, the author understands the basic principles of RFID, masters the preliminary technology of database and JSP dynamic homepage development, and fulfills B/S structure based parking management system using My Eclipse IDE and My SQL Database. The systems takes advantage of mature RFID read and write technology, MVC design model based on Java Bean、JSP、Servlet, database access technology using JSP, and My SQL RDBMS to realize the main functions.The system consists of two major function blocks: super administrator block (user management, price control and revenue inquiry); general administrator block (parking slot management, payment and revenue management). The system is fairly good in reliability, storage, security, efficiency and cost.Key words: Parking Management System; RFID; My SQL database; JSP; ServletIII目目 录录摘 要IIIABSTRACTIV目 录 V1 绪论11.1 停车场管理系统及概述11.1.1 系统研究现状与发展趋势11.1.2 本课题的研究意义21.2 开发语言及相关技术简介31.2.1 JAVA 语言简介31.2.2 JSP 与 Servlet 介绍31.2.3 JavaBean 简介41.2.4 RFID 技术51.2.5 使用到的开发工具52 需求分析72.1 系统需求72.2 功能需求72.3 业务流程图73 系统设计113.1 系统总体模块设计113.2 系统子模块设计114 数据库设计154.1 数据库管理系统概述154.2 E-R 图设计154.3 数据库物理设计195 系统实现235.1 系统架构及 RFID 技术的设计235.1.1 系统架构的设计235.1.2 RFID 技术的设计235.2 数据库连接和访问的实现235.3 系统登录功能的实现245.4 主窗体的实现255.5 管理员模块的实现27IV5.5.1 一般管理员添加275.5.2 管理员信息一览285.5.3 修改管理员信息295.5.4 删除管理员信息305.6 收费管理中心315.6.1 修改收费标准315.6.2 查看收费日志335.6.3 查看收费明细345.7 停车信息管理355.8 付费管理375.8.1 添加收费信息375.8.2 付费计算和修改车位信息395.9 收银日志管理416 结论与展望43致 谢45参考文献46附 录47无锡太湖学院学士学位论文01 绪论绪论1.1 停车场管理系统及概述停车场管理系统及概述1.1.1 系统研究现状与发展趋势系统研究现状与发展趋势智能停车场管理系统是现代化停车场车辆收费及设备自动化管理的统称。是将停车场完全置于计算机统一管理下的高科技机电一体化产品。他以感应卡 IC 卡或 ID 卡(最新技术有两卡兼容的停车场)为载体,通过智能设备使感应卡记录车辆及持卡人进出的相关信息,同时对其信息加以运算、传送并通过字符显示、语音播报等人机界面转化成人工能够辨别和判断的信号,从而实现计时收费、车辆管理等目地。中国智能停车场管理系统的市场现状比较落后,大大落后于动态交通的智能化市场发展,这一点国内外都存在这样的问题,过去的发展重动态交通,而轻静态交通,比如静态交通研究目前国内外都没有一个评价指标,而动态交通则有道路拥堵指数、绿波带等研究内容。静态交通发展的落后,已经成为了城市动态交通的障碍,目前国内外的专家提出了解决动态交通要“动静结合、以静制动”的理论,在实践中已经初见成效。未来静态交通智能化市场和动态交通智能化市场应该平分秋色,不分伯仲,静态交通智能化市场的发展前景非常大。(1)目前国内的停车场智能化市场的问题是 从业公司小而散,有几千家从业公司,合计市场份额只有十几亿元左右,缺乏领导型的标杆企业,这也是任何一个市场发展初期的标志。 企业研发投入小,同质化竞争严重,低质低价恶性竞争,企业利润低,没有发展后劲。小企业寿命短,两三年就倒闭,倒闭后重新搞个公司再来,不重视品牌和商业信誉,盲目打低价,扰乱市场秩序,导致竞争一片红海。而国外的成熟市场很少有这样的情况,很多企业都从业了几十年,保证一定的利润,市场专业化程度很高,技术研发投入较高,产品质量好、可靠性高、寿命长,这是我国停车场智能化市场未来的发展方向。(2)国外品牌对国内市场的影响 国外的产品和技术虽然成熟,但是国内外的停车环境差别较大,国外的产品未必能适应国内的需求。如,国内城市大、人口多、建筑物体量大、停车场车位多、停车场之间的间距大等,再加上国内的人员文明素质较低,停车场还要负责车辆的安全,所以,要求智能管理系统要能实现防盗、车位引导、反向寻车、车牌识别对比、快速出入、多费率、多功能停车卡等要求,国外的产品很难适应。 还有,国内产品价格低,国外价格高,竞争力不强。所以国外产品在国内市场空间并不大。 国外的产品和技术进入中国,会带来一些先进的技术和管理的理念,促进技术交流,并带动部分国内产品的出口,有一定的正面影响。负面影响基本没有。(3)智能停车场市场处于上升期 国内的智能停车市场发展了 20 多年,2000 年以前属于起步阶段,大家学习国外基于 RFID 的停车场管理系统的设计与实现1的技术,攻克技术难题,当时城市中车辆和停车场也不多,市场容量有限,当时停车并不难,而车辆属于贵重物品,所以,系统的主要管理目标是车辆的防盗和安全问题,智能停车系统属于安防行业的门禁一卡通系统的一个子系统,这个行业划分习惯一直保持至今。而 2000 年后,尤其是 2005 年以后,车辆快速增长,并大幅降价,车辆已不是什么贵重物品,而停车的主要矛盾是车多位少无处停车的问题,而随着停车场越建越大,车位引导、反向寻车、快速出入、城市停车诱导等系统发展了起来,智能停车系统更多的被看作是城市静态智能交通领域的一部分,这就回归了停车属于交通领域的本质。 停车场是一个系统,除了硬件外,还有很多软性的服务。以北京紫光为例,除了各种停车管理系统外,还投资运营了无忧停车网站,目前主要在北京开展业务,它主要实现网上车位查询、车位预定、月卡交易、错时停车、预约洗车等功能,为会员提供多种人性化服务。有手机客户端软件供智能手机客户免费下载。待北京业务开展成熟后,我们将向其他城市推广。(4)智能停车场的发展趋势智能停车场的发展趋势有以下几个方面: 停车场实现联网共享数据,打破信息孤岛,建设智慧停车物联网平台,实现停车诱导、车位预定、电子自助付费、快速出入等功能。 停车诱导、车位引导和反向寻车系统快速普及,目前在建的停车场越来越大,动辄几千个车位以上,这样大的停车场如果没有引导和寻车系统而靠人员疏导的话,对管理人员和客户都是一个灾难。 无人化服务逐渐普及,由于我国的劳动力成本快速上升,过去靠人海战术管理停车场的方法越来越不行了,参照国外的发展经验,停车场的自动化程度将越来越高,管理人员逐渐减少,直至实现无人化服务。 手机实现车位预定、支付、寻车等功能,智能手机和移动互联网这两年快速普及,移动互联网用户已经超过了固定互联网用户,利用手机订餐、购买电影票、下载优惠券、交友等已经普及,所以停车场中的这些应用将快速普及。 立体车库增多,我国城市人口多、密度大,土地成本高,参照日本等国的经验,立体车库具有占地少、利用率高、进出方便等优势,将会快速发展。1.1.2 本课题的研究意义本课题的研究意义研究意义目前,汽车行业是生活中非常常见的行业。在汽车行业引入汽车停车管理信息系统,是现代社会面临的重大问题之一。随着计算机应用的普及,利用计算机实现汽车停车的管理势在必行。所以建立一个可以规范化,自动化的停车管理系统显得非常重要。本课题的目标是设计并实现一个基于 RFID 和 Web 技术的停车场管理系统。停车场管理系统是信息化发展与现实社会相结合的产物,各大中小城市都要对大量的车辆停车问题进行科学有效地管理。以往的停车场是利用纸制品来记录和管理停车问题,这样效率低而且容易出错。因此,设计一个基于 RFID 的停车场管理系统就显得非常重要,可以把大量的停车信息保存在系统中,及时有效,不仅提高了停车的效率,而且大大增加了信息的准确性,此系统具有很大的积极意义,前景广泛。停车管理系统具有快速、可靠无锡太湖学院学士学位论文2性高、存储量大、保密性好、效率高、成本低等优点。1.2 开发语言及相关技术简介开发语言及相关技术简介1.2.1 JAVA 语言简介语言简介Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的 Java 程序设计语言和 Java 平台(即 JavaSE, JavaEE, JavaME)的总称。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人 PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,Java 更具备了显著优势和广阔前景。Java 平台由 Java 虚拟机(Java Virtual Machine,简称 JVM)和 Java 应用编程接口(Application Programming Interface,简称 API)构成。Java 应用编程接口为 Java 应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个 Java 平台之后,Java 应用程序就可运行。Java 平台已经嵌入了几乎所有的操作系统。这样 Java 程序可以只编译一次,就可以在各种系统中运行。Java 分为三个体系 J2SE(Java2 Platform Standard Edition,java 平台标准版),J2EE(Java 2 Platform,Enterprise Edition,java 平台企业版),J2ME(Java 2 Platform Micro Edition,java 平台微型版)。Java 编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。1.2.2 JSP 与与 Servlet 介绍介绍 (1)JSP 简介JSP(Java Server Pages)是由 Sun Microsystems 公司倡导、许多公司参与建立的一种动态网页技术标准,该技术为创建显示动态内容的 Web 页面提供了一个简捷而快速的方法。JSP 技术的设计目的是使得构建基于 Web 的应用程序更加容易和快捷,而这些应用程序能够与各种 Web 服务器、应用服务器、浏览器和开发工具共同工作。 JSP 规范就是 Web服务器、应用服务器、交易系统、以及开发工具供应商间广泛合作的结果。在传统的网页 HTML 文件(*htm,*.html)中加入 Java 程序片段(Scriptlet)和 JSP 标记(tag),就构成了 JSP网页(*.jsp)。Web 服务器在遇到访问 JSP 网页的请求时,首先执行其中的程序片段,然后将执行结果以 HTML 格式返回给客户。程序片段可以操作数据库、重新定向网页以及发送 email 等等,这正是建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是运行的结果,对客户浏览器的要求最低,可以实现无 Plugin,无 ActiveX,无 Java Applet,甚至无 Frame。(2)Servlet 简介一个 Servlet 就是 Java 编程语言中的一个类,它被用来扩展服务器的性能,它是在服务器上驻留的可以通过“请求-响应”编程模型来访问的应用程序。Servlet 是最主要的Java Web 应用组件之一,是与平台无关的服务器端组件;运行在 Servlet 容器中。Servlet容器负责处理客户请求、把请求传送给 Servlet 并把结果返回给客户。不同程序的容器实际实现 可能有所变化,但容器与 Servlet 之间的接口是由 ServletAPI 定义好的,这个接基于 RFID 的停车场管理系统的设计与实现3口定义了 Servlet 容器在 Servlet 上要调用的方法及传递给 Servlet 的对象类。Servlet 的生命周期: Servlet 容器创建 Servlet 的一个实例。 容器调用该实例的 init()方法。 如果容器对该 Servlet 有请求,则调用此实例的 service()方法。 容器在销毁本实例前调用它的 destroy()方法。 销毁并标记该实例以供作为垃圾收集。一旦请求了一个 Servlet,就没有办法阻止容器执行一个完整的生命周期。容器在Servlet 首次被调用时创建它的一个实例,并保持该实例在内存中,让它对所有的请求进行处理。容器可以决定在任何时候把这个实例从内存中移走。在典型的模型中,容器为每个 Servlet 创建一个单独的实例,容器并不会每接到一个请求就创建一个新线程,而是使用一个线程池来动态的将线程分配给到来的请求,但是这从 Servlet 的观点来看,效果和为每个请求创建一个新线程的效果相同。(3)Servlet 与 JSP 交互Servlet 框架由两个包组成:javax.servlet 和 javax.servlet.http;其核心是javax.servlet.Servlet 接口,该接口 5 个方法,其中有三个方法代表了 Servlet 的生命周期: init() 负责初始化 Servlet 对象 service() 负责响应来自客户的请求 destroy() 当 Servlet 对象退出生命周期时,负责释放占用的资源HTTP 的请求方式包括 DELETE、GET、OPTIONS、POST、PUT、TRACE,在HttpServlet 类中分别提供了相应的方法: doDelete()、doGet()、doOptions()、doPost()、doPut()、doTrace()。JSP 请求 Servlet,也称 JSP 调用 Servlet,即通过 form 表单或者 URL 地址连接 Servlet文件,并将数据传送到 Servlet 中。连接 Servlet 文件时,可以分为带参数和不带参数的连接方式。Servlet 文件接收 JSP 页面请求,实现数据的参数传递。1.2.3 JavaBean 简介简介JavaBean 是 Sun 公司为进入因特网、企业网以及万维网上进行分布式计算的组件结构的入口。按照 Sun 公司的定义,JavaBean 是一个可重复使用的软件部分,该部件可以用来生成其进行可视化处理的组件。JavaBean 是描述 Java 的软件组件模型,有点类似于Microsoft 的 COM 组件概念。JavaBean 组件是 Java 类,这些类遵循一个接口格式,以便于使方法命名、底层行为以及集成或实现的行为能够把类看做标准的 JavaBean 组件来进行构造。在 Java 模型中,通过 JavaBean 可以无限扩充 Java 程序的功能,通过 JavaBean的组合可以快速的生成新的应用程序。对于程序员来说,最好的一点就是 JavaBean 可以实现代码的重复利用,另外对于程序的易维护性等等也有很重大的意义。JavaBean 被称为是 Java 组件技术的核心。JavaBean 的结构必须满足一定的命名约定。JavaBean 类似于 Windows 下的 ActiveX 控件:它们都能够提供常用功能并且可以重复使用。JavaBean 可以在 JSP 程序中应用,这使得开发人员可以把某些关键功能和核心算法提取出来,封装成为一个组件对象,增加了代码的重用率和系统的安全性。如将访问数无锡太湖学院学士学位论文4据库的功能、数据处理功能编写封装为 JavaBean 组件,然后在某个 JSP 程序中加以调用。JavaBean 技术与 ActiveX 相比,有着很大的优越性,例如 JavaBean 与平台无关性,使得JavaBean 从一个平台移植到另外的平台上,代码可以不需要修改,甚至不需要重新编译。但是 ActiveX 就不同,它只能够应用于 Windows 平台,而且它的代码移植性很差,从Windows98 平台移植到 NT 平台就需要重新编译代码,甚至要大幅度改写程序。另一方面JavaBean 比 ActiveX 要容易编写很多,用起来也方便得多。JavaBean 组件在使用以前不需要注册,而 ActiveX 组件在使用以前必须在操作系统中注册,否则在运行的时候,系统会报错。1.2.4 RFID 技术技术(1)定义RFID 的中文名即射频识别技术,全称:Radio Frequency Identification。又称电子标签、无线射频识别,是一种通信技术,可通过无线电讯号识别特定目标并读写相关数据,而无需识别系统与特定目标之间建立机械或光学接触。RFID 读写器也分移动式和固定式。(2)应用使用的频段中比较常用的有低频(125k134.2K) 、高频(13.56Mhz) 、超高频,无源等技术。目前 RFID 技术应用很广,如:停车场,学校图书馆,公司门禁系统等。(3)特点射频识别系统最重要的优点是非接触识别,它能穿透雪、雾、冰、涂料、尘垢和条形码无法使用的恶劣环境阅读标签,并且阅读速度极快,大多数情况下不到 100 毫秒。有源式射频识别系统的速写能力也是重要的优点。可用于流程跟踪和维修跟踪等交互式业务。制约射频识别系统发展的主要问题是不兼容的标准。射频识别系统的主要厂商提供的都是专用系统,导致不同的应用和不同的行业采用不同厂商的频率和协议标准,这种混乱和割据的状况已经制约了整个射频识别行业的增长。许多欧美组织正在着手解决这个问题,并已经取得了一些成绩。标准化必将刺激射频识别技术的大幅度发展和广泛应用。1.2.5 使用到的开发工具使用到的开发工具(1)MyEclipseMyEclipse,是一个十分优秀的用于开发 Java, J2EE 的 Eclipse 插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。MyEclipse 是一款 Java 开发软件,功能强大,同意支持广泛。功能丰富,包括完备的编码、调试、测试和发布功能,支持HTML,Struts,CSS,Javascript,Spring,SQL,Hibernate。对于以上每一种功能上的类别,在 Eclipse 中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse 结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。 简单而言,MyEclipse 是 Eclipse 的插件,也是一款功能强大的 JavaEE 集成开发环境,基于 RFID 的停车场管理系统的设计与实现5支持代码编写、配置、测试以及除错,MyEclipse6.0 以前版本需先安装Eclipse。MyEclipse6.0 以后版本安装时不需安装 Eclipse。图 1.1 MyEclipse(2)MySqlMySQL 是一个真正的多用户、多线程 SQL 数据库服务器。SQL(结构化查询语言)是世界上最流行的和标准化的数据库语言。 MySQL 是以一个客户机/服务器结构的实现,它由一个服务器守护程序 mysqld 和很多不同的客户程序和库组成。本停车管理系统选择 MySQL 数据库管理系统的原因因为,它是一个小巧灵珑的数据库服务器软件,对于小型应用管理系统是非常理想的,对于数据库的设计和实现访问都比较方便。除了支持标准的 ANSI SQL 语句,它还支持多种平台,而在 Unix 系统上该软件支持多线程运行方式,从而能获得相当好的性能。对于不使用 Unix 的用户,它可以在 Windows NT 系统上以系统服务方式运行,或者在 Windows 95/98 系统上以普通进程方式运行。它还具有一下几个特点: 同时访问数据库的用户数量不受限制; 是目前市场上现有产品中运行速度最快的数据库系统; 用户权限设置简单、有效; 服务器能为客户提供多种语言的出错消息,方便开发时解决问题; MySQL 有一个用于改变数据的二进制日志。因为它是二进制,这一日志能够快速地从主机上复制数据到客户机上。即使服务器崩溃,这一二进制日志也会保持完整,而且复制的部分也不会受到损坏。无锡太湖学院学士学位论文62 需求分析需求分析2.1 系统需求系统需求本系统是基于 RFID 和 Web 技术的停车场管理系统。基于 RFID 技术就是能够实现停车场管理的自动化,通过射频技术的引用,使得停车收费等过程变得方便快捷,而且大大提高了信息的准确性。基于 WEB 技术就是使信息能够通过网络实现共享,可以远程访问系统。设计此停车场管理系统的目的就是信息化发展与现实社会相结合的产物,各大中小城市都要对大量的车辆停车问题进行科学有效地管理。以往的停车场是利用纸制品来记录和管理停车问题,这样效率低而且容易出错。因此,设计一个基于 RFID 的停车场管理系统就显得非常重要,可以把大量的停车信息保存在系统中,及时有效,不仅提高了停车的效率,而且大大增加了信息的准确性,此系统具有很大的积极意义,前景广泛。停车管理系统具有快速、可靠性高、存储量大、保密性好、效率高、成本低等优点。2.2 功能需求功能需求停车场管理系统的功能模块包括:超级管理员(管理员信息中心,收费管理);一般管理员(车主信息管理、付费管理、收银管理)。具体的功能需求如下:(1)系统权限:系统权限分为两种:超级管理员、一般管理员。超级管理员有权限添加、修改和删除一般管理员信息。(2)功能需求:管理员信息中心添加、修改和删除一般管理员信息,查询管理员信息收费管理查询收费日志,查看收费明细,修改收费标准停车信息管理增加车辆信息,更新车辆进入时间,查询当前空闲车位付费管理查询车辆信息,更新车辆出去时间,修改车位信息收银管理添加收费日志,录入车主信息,收费总金额信息2.3 业务流程图业务流程图业务流程图(transaction flow diagram,简称 TFD)是一种描述系统内各单位、人员之间业务关系、作业顺序和管理信息流向的图表,就是用一些规定的符号及连线来表示某个具体业务处理过程。利用它可以帮助分析人员找出业务流程中的不合理流向1。业务流程图描述的是完整的业务流程,以业务处理过程为中心,一般没有数据的概念。停车管理系统中各个模块的业务流程图如下:基于 RFID 的停车场管理系统的设计与实现7(1)用户登录用户输入用户名和密码超级管理员身份是否合法否是跳转至超级管理员主菜单判断是超级管理员还是一般管理员一般管理员否身份是否合法是跳转至一般管理员主菜单图 2.1 系统登录业务流程图(2)管理员信息模块管理员输入查询信息系统进行检索操作查询的结果管理员信息系统进行添加操作Admin_admin表管理员信息系统进行修改操作Admin_admin表选择要删除的管理员系统进行删除操作Admin_admin表图 2.2 管理员信息模块业务流程图无锡太湖学院学士学位论文8(3)收费管理模块超级管理员收入明细查询系统进行检索操作查询的结果收入日志查询系统进行检索操作Admin_revenue表收费标准信息系统进行修改操作Admin_price表User_payment表查询的结果图 2.3 收费管理模块业务流程图(4)停车信息管理模块超级管理员车辆进入时间系统进行更新操作空闲车位系统进行检索操作User_parking表停车信息系统进行添加操作User_parking表User_payment表查询的结果基于 RFID 的停车场管理系统的设计与实现9图 2.4 停车信息模块业务流程图(5)付费管理模块超级管理员车辆出去时间系统进行更新操作收费明细系统进行添加操作User_payment表车位信息车位变为空闲User_parking表User_payment表图 2.5 付费管理模块业务流程图(6)收银管理模块超级管理员车主信息系统进行添加操作收费日志系统进行添加操作Admin_revenue表车位信息车位变为空闲User_parking表Admin_member表图 2.6 收银管理模块业务流程图无锡太湖学院学士学位论文103 系统设计系统设计3.1 系统总体模块设计系统总体模块设计该停车场管理系统主要包含以下几个模块:管理员信息中心,收费管理,停车信息管理,付费管理,收银管理。系统功能模块图如下:查询管理员信息系统登录管理员管理中心收费管理停车信息管理付费管理收银管理更新车辆进入时间查询当前空闲车位删除管理员信息修改收费标准修改管理员信息增加管理员信息添加收费日志修改车位信息查询收费日志增加车辆信息收费总额信息录入车辆信息更新车辆出去时间查看收费明细添加收费信息超级管理员登录一般管理员登录图 3.1 系统功能模块图3.2 系统子模块设计系统子模块设计(1)管理员信息管理模块管理员管理:作为超级管理员进入管理员操作界面,可以查看管理员的信息,同时可以对管理员信息进行修改,比如:管理员的姓名,密码,操作权限等等进行修改。后期系统或者停车场扩大,对管理员可以进行增加。删除不必要的管理员信息。管理员管理中心查询管理员信息修改管理员信息增加管理员信息删除管理员信息图 3.2 管理员信息管理功能模块图(2)收费管理模块收费管理:这个管理系统,主要是对收费的情况进行系统的操作与管理,随时可以让管理员查看或查询收费日志,也可以更加细致的查看收费的明细,同时根据具体情况基于 RFID 的停车场管理系统的设计与实现11可以对收费的标准进行实时修改。收费管理查询收费日志修改收费标准查看收费明细图 3.3 管理员信息中心功能模块图(3)停车信息管理模块停车信息管理:当有车进入的时候,管理员会先在系统中寻找当前空闲车位,然后在当前空闲车位下录入车辆车牌号,并生成当下进入时间,同时把这些信息记录在一张停车卡里面。停车信息管理增加车辆信息更新车辆进入时间查询当前空闲车位图 3.4 货物类型管理功能模块图(4)付费管理模块付费信息:当有车出去的时候,车主拿出停车卡在 RFID 的刷一下,卡上生成当下时间(这为出去时间) ,通过系统自带的费用程序生成停车费用。同时把这个收费情况添加到收费日志里面去。付费管理更新车辆出去时间添加收费信息修改车位信息图 3.5 货物信息管理功能模块图无锡太湖学院学士学位论文12(5)收银管理模块收银管理:当有新的收费情况添加进来时候,要录入车主的信息还有他的付费情况,把他们一起添加到收费明细中去。收银管理添加收费日志录入车主信息收费总额信息图 3.6 供货商信息管理功能模块图基于 RFID 的停车场管理系统的设计与实现134 数据库设计数据库设计4.1 数据库管理系统概述数据库管理系统概述选择一个好的数据库管理系统对应用系统来说是非常重要的。其实,选择一个数据库管理系统最根本的是要根据系统的要求和实际的情况来定。当今数据库管理系统主要有以下种类:Microsoft 的 SQL Server ;MySQL AB 的 MySQL 5.0Oracle 的 Oracle 9i ,Oracle 10gSybase 的 ASE(Adaptive Server Enterprise);IBM 的 DB2数据库管理系统是数据库系统的核心,是为数据库的建立(组织、描述) 、管理和维护而配置的软件,它是建立在操作系统的基础上,是位于操作系统与用户之间的一层数据管理软件,负责对数据库进行统一的管理和控制。为了适应数据共享的环境,DBMS能够提供数据的安全性、完整性、并发控制和数据备份与恢复等数据保护能力,以保证数据库中数据安全可靠和正确有效。数据库是存放数据的地方,按一定结构组织在一起的相关数据的集合,是数据库管理系统的最重要的组成部分之一,可以通过一定的机制实现多个应用程序对数据的共享。4.2 E-R图设计图设计该系统的 E-R 图设计如下:(1)在用户管理中,主要用来管理后台管理员的信息,并且该系统为一个小型系统,因此,该系统没有添加管理员用户权限的问题,所以该数据表中只需要包含一些简单的管理员用户的信息。如图 4.1 所示:超级用户管理用户权限备注上次登录IP地址编号加入时间管理员姓名密码管理员账号图 4.1 超级用户实体 E-R 图无锡太湖学院学士学位论文14(2)价格表实体记录了停车的时长和每小时的停车单价。如图 4.2 所示:价格表价格编号时间长度图 4.2 价格表实体 E-R 图(3)收入明细表实体包括每次收费的明细,收费的日期和记录人。如图 4.3 所示:收入明细表日期编号录入人收费明细图 4.3 收入明细实体 E-R 图(4)这是超级管理员登录后左侧菜单栏显示的内容。如图 4.4 所示:超级管理员左侧列表是否显示列表编号文件名称父级列表内容名称排序序列图 4.4 超级管理员列表实体 E-R 图基于 RFID 的停车场管理系统的设计与实现15(5)这是一般管理员登录后左侧菜单栏显示的内容。如图 4.5 所示:用户左侧列表是否显示列表编号文件名称父级列表内容名称排序序列图 4.5 一般管理员实体 E-R 图(6)停车信息实体记录了每次停车的相关信息。如图 4.6 所示:停车信息表车牌号编号进入时间空闲标识车位号图 4.6 停车信息实体 E-R 图(7)收入情况实体记录了每次收入的相关信息。如图 4.7 所示:无锡太湖学院学士学位论文16收入情况进入时间出去时间编号收费金额车牌号车位号日期图 4.7 收入情况实体 E-R 图(8)车主与车位信息实体记录了车主与车位之间的关联相关信息。如图 4.8 所示:车主与车位信息加入时间车位标识到期时间编号车位标识车主电话车牌号姓名车主电话进入时间出去时间图 4.8 车主与车位信息实体 E-R 图(9) 实体联系图基于 RFID 的停车场管理系统的设计与实现17管理员核实用户停车信息表价格表收入情况一般用户车主与车位信息收入明细表n n1 1管理1 11 1发布n n1 1添加1 1n n添加1 1n n查看1 1查看1 1n n查看1 1n n1 1图 4.9 实体联系图4.3 数据库物理设计数据库物理设计停车场管理系统的数据库中各个表格的设计结构如下面表格所示,每个表格对应数据库中的一个表。(1)超级用户管理结构,如图表4-1所示。表 4-1 超级用户管理序号含义字段名数据类型长度允许空主键否1编号IDint100是2管理员账号ANameint255是3密码PwordNvarchar255是4管理员姓名UserNameNvarchar255是5用户权限AdminPurviewNvarchar255是6上次登录 IP 地址LastLoginIPNvarchar255是7备注remarkNvarchar255是8加入时间AddTimeNvarchar30是(2)停车价格表结构,如图表 4-2 所示。表 4-2 价格表序号含义字段名数据类型长度允许空主键否1编号IDint100是2时间长度TimeSlotvarchar255是3价格Pricevarchar255是无锡太湖学院学士学位论文18(3)停车场收入明细结构,如图表 4-3 所示。表 4-3 收入明细表序号含义字段名数据类型长度允许空主键否1列表编号listidint100是2列表内容名称listnamevarchar255是3父级rankint10是4是否显示Show_listtinyint1是5排序序列Show_orderint100是6文件名称EnNamvarchar25是(4)车主与车位信息结构,如图表 4-4 所示。表 4-4 车主与车位信息序号含义字段名数据类型长度允许空主键否1编号RFIDint100是2姓名namevarchar255是3车牌号carNumbervarchar255是4车主电话phoneNumbervarchar255是5备注remarkvarchar255是6加入时间addTimevarchar30是7到期时间expireTimevarchar308车位标识positionvarchar309车位状态parkingStatusvarchar3010进入时间checkinTimevarchar3011出去时间checkoutTimevarchar30 (5)超级管理员左侧列表结构,如图表 4-5 所示。表 4-5 超级管理员左侧列表序号含义字段名数据类型长度允许空主键否1列表编号listidint100是2列表内容名称listnamevarchar255是3父级rankint10是4是否显示Show_listtinyint1是5排序序列Show_orderint100是6文件名称EnNamvarchar25是基于 RFID 的停车场管理系统的设计与实现19(6)用户管理左侧列表结构,如图表 4-6 所示。表 4-6 用户左侧列表序号含义字段名数据类型长度允许空主键否1列表编号listidint100是2列表内容名称listnamevarchar255是3父级rankint10是4是否显示Show_listtinyint1是5排序序列Show_orderint100是6文件名称EnNamvarchar25是(7)用户停车信息结构,如图表 4-7 所示。表 4-7 用户停车信息表序号含义字段名数据类型长度允许空主键否1编号IDint100是2车位号parkingIDvarchar255是3空闲标识idleFlagint100是4车牌号carIDvarchar255是5进入时间inTimevarchar255是 (8)停车场收入情况结构,如图表 4-8 所示。表 4-8 收入情况序号含义字段名数据类型长度允许空主键否1编号IDint100是2日期datevarchar255是3车位号parkingIDvarchar255是4车牌号carIDvarchar255是5进入时间inTimevarchar255是6出去时间outTimevarchar255是7收费金额paymentvarchar无锡太湖学院学士学位论文205 系统实现系统实现5.1 系统架构及系统架构及RFID技术的设计技术的设计5.1.1 系统架构的设计系统架构的设计停车场管理系统采用了经典的 MVC 设计模式,将系统实现分层设计模式;分别为表现层,也就是管理员可以看见并使用的网页(JSP 页面),还有处务逻辑业务的 JAVA 类和实现数据的访问类(ConnectToDataBase.java)。src 目录下放着系统的业务逻辑处理代码,按照模块的不同存放不同的处理逻辑类,比如超级管理员对一般管理员的操作,将添加管理员方法,修改管理员方法,删除管理员方法和查询管理员方法放在同一个逻辑类里。将用户的一些动作放在同一个文件夹下。代码调理清晰,便于日后维护。页面和后台代码之间的参数传递通过 request.getParameter()来获取。5.1.2 RFID 技术的设计技术的设计RFID 技术就是射频识别技术,由于资源有限,本系统采用人工录入停车信息,人工录入付费信息来代替射频技术自动识别车辆信息。当车辆进入停车场时,人工输入车牌等信息,替代了射频技术自动读入车牌信息。当车辆离开停车场时,人工输入车牌信息,系统计算出相应的付费信息,替代了射频技术再次自动读入车牌信息。功能上,两者没有任何区别。都能实现车辆的信息的录入。5.2 数据库连接和访问的实现数据库连接和访问的实现该系统的数据库连接是通过 createConn()方法来实现的,通过 JDBC 技术连接到数据库,如果连接成功,Bconn 等于 true,否则等于 false。连接代码如下:public boolean createConn() String dbDriver = com.mysql.jdbc.Driver; String dbURL = jdbc:mysql:/localhost:3306/jpparking; String dbUser = root; String dbPwd = wodemima; boolean Bconn = false; try Class.forName(dbDriver).newInstance(); Conn = DriverManager.getConnection(dbURL, dbUser, dbPwd); Bconn = true; System.out.println(连接数据库成功!); catch (InstantiationException e) System.out.print(e.toString(); catch (IllegalAccessException e) System.out.print(e.toString();基于 RFID 的停车场管理系统的设计与实现21 catch (ClassNotFoundException e) System.out.print(e.toString(); catch (SQLException e) System.out.print(e.toString(); return Bconn; 5.3 系统登录功能的实现系统登录功能的实现本系统的登录分为两种权限,即超级管理员和一般管理员。他们可以分别输入用户名和密码进行系统登录操作,点击“登录”按钮后,系统会将用户名和密码传入后台进行判断,如果输入的用户名和密码正确,则登录成功,否则登录失败,请重新登录。登录成功后,如果是超级管理员,则页面跳转到超级管理员的主菜单,如果是一般管理员登录,则跳转到一般管理员的主菜单,二者的权限不同,所以菜单功能也不同。如图 5.1所示:图 5.1 系统登录页面登录系统的方法:public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException request.setCharacterEncoding(gb2312); /设置请求的字符编码格式无锡太湖学院学士学位论文22 String username = request.getParameter(name); /获得用户名 String password = request.getParameter(pwd); /获得密码 HttpSession session = request.getSession(); session.setAttribute(name, username); System. out .println(Before get code); String code=request.getParameter(code); System. out .println(After get code); System. out .println(After Scode); / 判断用户名和密码是否正确 User_admin_Bean userBean = new User_admin_Bean(); System. out .println(After userBean); boolean isValid = false; try isValid = userBean.valid(username, password);/调用 valid 方法进行验证 System.out.println(Try userBean); catch (SQLException e) System. out .println(Try fail for SQL.); e.printStackTrace(); if (isValid) System. out .println(match success!); String AdminPurview = userBean.getPurview(); if (AdminPurview.equals(super) /判断是否是超级管理员 System. out .println(I am super!); request.getRequestDispatcher(./admin/admin_index.jsp).forward(request, response); /是超级管理员,跳转至 admin_index.jsp else System. out .println(I am not super!); request.getRequestDispatcher(./user/user_index.jsp).forward(request, response); /是一般管理员,跳转至 user_index.jsp else System. out .println(match fail!); response.sendRedirect(./admin/error.jsp);/否则跳转至错误页面 基于 RFID 的停车场管理系统的设计与实现235.4 主窗体的实现主窗体的实现系统的主界面分为超级管理员主界面和一般管理员主界面,二者的区别就是左侧菜单栏的功能不同。停车场管理系统的主界面设计如下图所示,最上面的区域是系统的 LOGO 和系统导航栏,显示着当前登录系统的用户,便于用户查看;界面的左侧是系统的菜单导航栏,点击后可以跳转值系统各个模块的功能。如图 5.2 所示:图 5.2 超级管理员主菜单如图 5.3 所示:无锡太湖学院学士学位论文24图 5.3 一般管理员主菜单不同管理员的不同菜单栏的实现数据库中有两张表,分别为:超级管理员左侧列表(Admin_leftlist)和用户左侧列表(User_leftlist),系统运行时从数据库中检索这两张表,分别动态生成各自的菜单栏。5.5 管理员模块的实现管理员模块的实现5.5.1 一般管理员添加一般管理员添加添加一般管理员:在添加管理员页面输入管理的基本信息:管理员名称、登录密码、再次输入密码、真实姓名和说明。点击提交按钮,如果输入的数据合法,则系统会向数据库中插入一条数据,插入成功后,页面跳转到主菜单页面。如图 5.4 所示:图 5.4 添加一般管理员添加一般管理员的方法:/添加一般管理员信息 protected void Register(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException 基于 RFID 的停车场管理系统的设计与实现25 request.setCharacterEncoding(UTF-8); HttpSession session = request.getSession(true);/从页面获取输入的管理员基本信息,用 request.getParameter()方法String AName=new String(request.getParameter(AName).getBytes(ISO-8859-1),UTF-8);String Pword =new String(request.getParameter(Pword).getBytes(ISO-8859-1),UTF-8);String Pword2 =new String(request.getParameter(Pword2).getBytes(ISO-8859-1),UTF-8);String UserName =new String(request.getParameter(UserName).getBytes(ISO-8859-1),UTF-8);String Explain =new String(request.getParameter(Explain).getBytes(ISO-8859-1),UTF-8); String check=notest; addoredit Adduser=new addoredit(); String sql = null; String LastLoginIP=request.getRemoteAddr(); SimpleDateFormat tempDate = new SimpleDateFormat(yyyy-MM-dd HH:mm:ss); String AddTime = tempDate.format(new java.util.Date(); if (AName= | Pword= | Pword2= | !Pword.equals(Pword2) check=error; else/插入表的 SQL 文 sql=insert into admin_admin (AName, Pword,UserName, LastLoginIP,remark, AddTime) values(+AName+,+Pword+,+UserName+,+LastLoginIP+,+Explain+,+AddTime+); Adduser.setadduser(sql); /执行 SQL 文 if(Adduser.getIupdate()=0) /判断是否执行成功 check=fail;/执行失败 else if(Adduser.getIupdate()!=0) check=thrifty;/执行成功 session.setAttribute(check,check); response.sendRedirect(./admin/page/register.jsp); return; 无锡太湖学院学士学位论文265.5.2 管理员信息一览管理员信息一览点击菜单栏的查看用户,页面的右边部门显示出当前系统中存在的所有的管理员信息,每条记录中包括管理员的 ID 号,登陆名称,管理员名称,操作权限和登录 IP 等等信息。每条记录都对应着相应的编辑和删除连接。点击它们,会跳转至相应的界面。如图 5.5所示:图 5.5 查看一般管理员信息管理员信息一览方法:/返回检索出的管理员数据集public ResultSet edituser(int id) throws SQLException if(db_Manage.createConn() /判断数据库是否连接成功 String sql =SELECT * FROM admin_admin WHERE ID=+id+ ORDER BY ID; if (db_Manage.Execute(sql) /执行 SQL 文 rs_E= db_Manage.Equery(sql); /rs_E.close(); /db_Manage.closeConn(); return rs_E;/返回检索到的结果集5.5.3 修改管理员信息修改管理员信息点击菜单栏的查看用户,页面的右边部门显示出当前系统中存在的所有的管理员信息,其中,每条记录都对应着相应的编辑和删除连接。点击编辑连接,会跳转至如下的界面,超级管理员可以输入想要修改的信息,点击提交按钮后,系统进行修改操作。点击重置按钮,文本框中的内容会被全部清空。如图 5.6 所示:基于 RFID 的停车场管理系统的设计与实现27图 5.6 修改管理员信息页面修改管理员信息的方法:/修改管理员的基本信息 protected void edit(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException request.setCharacterEncoding(UTF-8); HttpSession session = request.getSession(true);/从页面获取输入的管理员基本信息,用 request.getParameter()方法 String Id=request.getParameter(id); String AName=new String(request.getParameter(AName).getBytes(ISO-8859-1),UTF-8); String Pword =new String(request.getParameter(Pword).getBytes(ISO-8859-1),UTF-8); String Pword2 =new String(request.getParameter(Pword2).getBytes(ISO-8859-1),UTF-8); String UserName =new String(request.getParameter(UserName).getBytes(ISO-8859-1),UTF-8); String Explain =new String(request.getParameter(Explain).getBytes(ISO-8859-1),UTF-8); String check=notest; String sql = null; addoredit Adduser=new addoredit(); if (AName= | Pword= | Pword2= | !Pword.equals(Pword2) check=error; else/修改一般管理员信息的 SQL 文 sql=UPDATE admin_admin SET AName 无锡太湖学院学士学位论文28=+AName+,Pword=+Pword+,UserName=+UserName+,remark=+Explain+ WHERE ID=+Integer.valueOf(Id); Adduser.setadduser(sql); /执行 SQL 文 if(Adduser.getIupdate()=0) check=fail; else if(Adduser.getIupdate()!=0) check=thrifty; session.setAttribute(check,check); response.sendRedirect(./admin/page/edituser_result.jsp); return; 5.5.4 删除管理员信息删除管理员信息点击菜单栏的查看用户,页面的右边部门显示出当前系统中存在的所有的管理员信息,其中,每条记录都对应着相应的编辑和删除连接。点击删除连接,该条管理员信息就会被删除,页面自动刷新,记录会减少一条。如图 5.6 所示:图 5.7 删除前的管理员信息如图 5.8 所示:基于 RFID 的停车场管理系统的设计与实现29图 5.8 删除后的管理员信息删除管理员信息的方法:/删除用户 protected void del(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException /获取管理员的 ID String ID = request.getParameter(id);/根据主键 ID 删除相应的管理员信息 String sql = DELETE FROM admin_admin WHERE ID=+Integer.valueOf(ID); addoredit del=new addoredit(); del.setadduser(sql); response.sendRedirect(./admin/page/user_admin.jsp); 5.6 收费管理中心收费管理中心5.6.1 修改收费标准修改收费标准点击收费标准按钮,页面的右边会显示出相应的功能页面,从下图可以看到,超级管理员可以规定停车的每小时单价和停车超过一小时后的单价。输入合法的信息后,点击提交按钮,系统自动进行修改。如图 5.9 所示:无锡太湖学院学士学位论文30图 5.9 修改收费标准页面修改收费标准的方法:/修改 price protected void Pricestd(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException request.setCharacterEncoding(UTF-8);/从页面获取一小时以内的价格 String price0=new String(request.getParameter(price0).getBytes(ISO-8859-1),UTF-8);/从页面获取超过一小时的价格 String price1=new String(request.getParameter(price1).getBytes(ISO-8859-1),UTF-8); String check=notest; String time0 = 0; /代表一小时以内的价格 String time1 = 1; /代表超过一个小时的价格 String sql = null; addoredit Adduser=new addoredit();/SQL 文,修改对应的价格 sql=UPDATE admin_price SET Price=+price0+ WHERE TimeSlot=+time0+; Adduser.setadduser(sql); sql=UPDATE admin_price SET Price=+price1+ WHERE TimeSlot=+time1+; Adduser.setadduser(sql); /执行 SQL 文 if(Adduser.getIupdate()=0) check=fail; else if(Adduser.getIupdate()!=0) check=thrifty;基于 RFID 的停车场管理系统的设计与实现31 HttpSession session = request.getSession(true); session.setAttribute(check,check); response.sendRedirect(./admin/page/price_result.jsp); return;5.6.2 查看收费日志查看收费日志点击查看收入日志,系统在后台进行检索,并在页面右边显示出所有的收入日志信息。包括日期,当天的收入金额和记录人的信息。如图 5.10 所示:图 5.10 查看收费日志页面检索收费日志的方法:/编辑收费日志 protected void editrevenue(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException request.setCharacterEncoding(UTF-8); HttpSession session = request.getSession(true); /从页面获取日期,当天收入和记录人信息 String iDate=new String(request.getParameter(filldate).getBytes(ISO-8859-1),UTF-8); String iRevenue =new String(request.getParameter(todayrevenue).getBytes(ISO-8859-1),UTF-8); String iWriter =new String(request.getParameter(fillMan).getBytes(ISO-8859-1),UTF-8); String check=notest;无锡太湖学院学士学位论文32 addoredit Adduser=new addoredit(); String sql = null;/将获取的三个信息插入到日志明细表中 sql=insert into admin_revenue(date,revenue,writer) values(+iDate+,+iRevenue+,+iWriter+); Adduser.setadduser(sql); if(Adduser.getIupdate()=0) check=fail; else if(Adduser.getIupdate()!=0) check=thrifty; session.setAttribute(check,check); response.sendRedirect(./user/page/addrevenuesucceed.jsp); return;5.6.3 查看收费明细查看收费明细点击查看收费明细,系统在后台进行检索,并在页面右边显示出所有的收费明细信息。包括日期,车位号,车牌号,车辆的进入时间和离开时间以及收费金额。如图 5.11所示:图 5.11 查看收费明细页面检索收费明细的方法:/定义表格中的第一行,用来显示表格的标题信息。td 为单元格,此处定义了 6 个单元格,分别显示检索出来的 6 个字段。 日期车位号车牌号进入时间离开时间收费金额 %/通过 for 循环控制输出,将检索结果集中的记录逐行输出 for (int i = 0; i 5.7 停车信息管理停车信息管理 查询空闲车位,点击刷卡登记,系统在后台进行检索,并在页面右边显示出所有的当前空闲车位信息。包括车位 ID,车位号,车位是否空闲标识等信息,而且每条记录都对应这一个刷卡等级链接,点击该链接,即可以进行停车登记操作。如图 5.12 所示:无锡太湖学院学士学位论文34图 5.12 空闲车位查看页面/空闲车位检索的方法:/定义表格中的第一行,用来显示表格的标题信息。td 为单元格,此处定义了 6 个单元格,分别显示检索出来的 6 个字段。 ID车位号是否空闲车牌号进入时间刷卡登记 基于 RFID 的停车场管理系统的设计与实现35 % for (int i = 0; i a href=editcard.jsp?id= target=main刷卡登记 /刷卡登记是一个超链接,点击后会跳转至刷卡登记页面,同时将车位ID(v.elementAt(0)传给了下一个页面。 5.8 付费管理付费管理5.8.1 添加添加收费信息收费信息点击菜单栏中的刷卡付费链接,页面右边部门会显示出当前停车场内的车辆信息,包括车辆所在的车位号,该车车牌号,还有该车进入停车场的时间。每辆车对应着一个付费链接,点击该链接,页面跳转至刷卡付费的详细信息页面,如下面两幅图所示:如图 5.13 所示:图 5.13 所有未付费车辆查询页面如图 5.14 所示:无锡太湖学院学士学位论文36图 5.14 车辆付费信息页面所有未付费车辆信息查询的方法: ID车位号是否空闲车牌号进入时间刷卡付费 % for (int i = 0; i a href=editpayment.jsp?id= target=main付费 5.8.2 付费计算和修改车位信息付费计算和修改车位信息修改车位信息没有对应的页面,这个过程是系统在后台做的处理,当车辆付费后,该车辆所在的车位的状态将会被改为“空闲”状态,以便后来车辆停车。付费计算和修改车位状态的方法:protected void editpayment(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException request.setCharacterEncoding(UTF-8); HttpSession session = request.getSession(true); String Id=request.getParameter(id); System.out.print(Id); String iParkingID = new String(request.getParameter(hParkingID).getBytes(ISO-8859-1),UTF-8); String iCarID = new String(request.getParameter(hCarID).getBytes(ISO-8859-1),UTF-8); String iInTime = new String(request.getParameter(hintime).getBytes(ISO-8859-1),UTF-8); System.out.print(check out: + iInTime); System.out.print(request.getParameter(hintime); String iOutTime = new String(request.getParameter(hOutTime).getBytes(ISO-8859-1),UTF-8); String iPayment = new String(request.getParameter(hPayment).getBytes(ISO-8859-1),UTF-8); System.out.print( End); String iDate = new String(request.getParameter(hOutTime).getBytes(ISO-8859-1),UTF-8); String iDay = new String(request.getParameter(iDay).getBytes(ISO-8859-无锡太湖学院学士学位论文381),UTF-8); String iHour = new String(request.getParameter(iHour).getBytes(ISO-8859-1),UTF-8); String iCDate = iDay+ +iHour; System.out.print( + iCDate + ); String jDay = new String(request.getParameter(jDay).getBytes(ISO-8859-1),UTF-8); String jHour = new String(request.getParameter(jHour).getBytes(ISO-8859-1),UTF-8); String jCDate = jDay + + jHour; System.out.print( + jCDate + ); String check=blank; String blank = ; String sql = null; addoredit Adduser=new addoredit();/将该车位的空闲状态改为 idleFlag=1(空闲),并清除该车位的进入时间和车辆信息。 sql=UPDATE user_parking SET inTime=+blank+, idleFlag=1, carID=+blank+ WHERE ID=+Integer.valueOf(Id); Adduser.setadduser(sql);/向收入情况表中插入一条收费记录 sql=insert into user_payment(date,parkingID,carID,inTime,outTime,payment) values(+iDate+,+iParkingID+,+iCarID+,+jCDate+,+iCDate+,+iPayment+); Adduser.setadduser(sql); if(Adduser.getIupdate()=0) check=fail; else if(Adduser.getIupdate()!=0) check=thrifty; session.setAttribute(check,check); response.sendRedirect(./user/page/editpayment_succeed.jsp); return; 基于 RFID 的停车场管理系统的设计与实现395.9 收银日志管理收银日志管理点击菜单栏中的填写收银日志链接,页面的右边部门会跳出相应的功能界面,如图,管理员可以输入日期,当日的收银金额和自己的姓名,点击确认按钮,系统会向数据库中插入一条记录。如图 5.15 所示:图 5.15 添加收费日志页面添加收费日志的方法:protected void editrevenue(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException request.setCharacterEncoding(UTF-8); HttpSession session = request.getSession(true); String iDate=new String(request.getParameter(filldate).getBytes(ISO-8859-1),UTF-8); String iRevenue =new String(request.getParameter(todayrevenue).getBytes(ISO-8859-1),UTF-8); String iWriter =new String(request.getParameter(fillMan).getBytes(ISO-8859-1),UTF-8); String check=notest; addoredit Adduser=new addoredit(); String sql = null; sql=insert into admin_revenue(date,revenue,writer) values(+iDate+,+iRevenue+,+iWriter+); Adduser.setadduser(sql); if(Adduser.getIupdate()=0) check=fail; else if(Adduser.getIupdate()!=0) check=thrifty; session.setAttribute(check,check); response.sendRedirect(./user/page/addrevenuesucceed.jsp); return; 无锡太湖学院学士学位论文406 结论与展望结论与展望本系统是基于 RFID 技术、结合 MySQL 数据库并且通过 JSP 技术来实现的,使用java 语言开发出的停车场管理系统。在这次的毕业设计的过程中,本人感受到很多东西,比如对数据库的运用在不断的错误与改正中慢慢得心应手起来了。同时系统实现了对信息数据的浏览、查询、编辑和管理等基本数据库操作,系统采用了模块化设计方法,根据用户的需求及程序的应用与维护的易用性,将各个部分置于不同的模块当中,方便了程序的扩展与维护,同时建立了程序功能复用的基础。同时在这次毕业设计过程中,本人不停的遇到困难,但是心不气馁,不停的查阅书籍与求助老师,尽量希望自己的毕业设计能达到自己心中的完美程度。虽然在界面设计上不是很完美,但是基本功能齐全。相信在以后的学习中会不断的改正与完善自己。 该停车场管理系统可能存在以下一些不足之处:(1)系统本身只实现了一般的功能,没有太多的特殊功能。(2)在细节上的细化还是不够全面。(
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
提示  人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:基于RFID的停车场管理系统的设计与实现【带程序】
链接地址:https://www.renrendoc.com/p-273429.html

官方联系方式

2:不支持迅雷下载,请使用浏览器下载   
3:不支持QQ浏览器下载,请用其他浏览器   
4:下载后的文档和图纸-无水印   
5:文档经过压缩,下载后原文更清晰   
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

网站客服QQ:2881952447     

copyright@ 2020-2024  renrendoc.com 人人文库版权所有   联系电话:400-852-1180

备案号:蜀ICP备2022000484号-2       经营许可证: 川B2-20220663       公网安备川公网安备: 51019002004831号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知人人文库网,我们立即给予删除!