1、摘 要随着国内经济的不断发展,现代化进程不断加快,私家车不断增加,各类大型公共场所停车场的车流量不断增加,保安与管理工作也日渐繁重,对机动车的保管成为一个越来越受关注的社会题。这些大型公共场所停车场设施的使用者数量多,且多数停留时间短,这要求有一套操作简单,计费快速准确的系统来解决这个问题。现在普遍采用的人工收费方式,在很大的程度上存在弊端,造成停车场秩序比较的混乱。本系统以 J2EE 框架为开发工具,在总结系统需求分析的基础上,提出系统的总体设计目标、系统总体架构和功能模块的设计。智能停车场收费管理系统从系统需求分析、概要设计、详细设计到具体的编码实现、功能测试都严格遵循了软件工程的思想。关
2、键词:停车管理 JSP MySQL Struts Spring HibernateABSTRACTWith computer technology, network technology and the rapid development of information technology, to the modern work brought great changes, but also to the lives of many modern convenience。 Logistics and transport industry today is moving in the pursu
3、it of efficient, low-cost, reliable direction。The rise of a wide range of logistics information network, while reducing material consumption, on the other hand increased labor productivity。 Information technology, automation, networking, and has become a distinct characteristic of modern logistics。
4、Only by relying on modern logistics enterprise of scientific logistics and logistics information management, will be warehousing, transportation, distribution, messaging and other functions into one, in order to provide safe, high quality, fast, accurate and modern logistics services。Therefore, the
5、establishment of sound and effective logistics information management system is necessary。This system to J2EE framework for development tools,This paper summarizes the analysis of system requirements based on the proposed system design objectives, system structure and function of the overall module
6、design。 Logistics management system from the system requirements analysis, preliminary design, detailed design to coding to achieve a specific, functional testing strictly followed the ideas of software engineering。Key words:logistics management system JSP MySQL Struts Spring Hibernate目 录1 前 言 .11.1
7、 课题的来源及意义.11.2 国内外发展状况.11.3 本课题研究的目标.21.4 本课题研究的内容.22 主要用到的技术和工具 .32.1 MVC 设计模式 .32.2 Struts 技术 .32.3 Spring 技术 .42.4 Hibernate 技术 .42.5 JSP 介绍 .42.6 Mysql 简介 .62.7 Tomcat.63 系统的可行性论证及需求分析 .73.1 系统的可行性研究.73.2 系统功能需求分析.73.3 系统的三层架构设计思想.84 数据库设计 .104.1 关系数据库的基本概念.104.2 系统 E-R 图.104.3 数据库表设计 .115 详细设计
8、.145.1 系统首页 .145.2 系统主界面 .145.3 会员管理 .145.4 员工管理.155.5 用户管理 .165.6 收费标准设置.175.7 营业额查询 .175.8 充值管理 .175.9 停车场管理 .185.10 车库信息 .185.11 个人信息管理 .196 系统测试 .216.1 测试原则.216.2 测试方法.21结 论 .22谢 辞 .23参考文献 .2401 前 言1.1 课题的来源及意义随着信息时代的来临,科学技术的不断提高,特别是计算机科学的日趋成熟,其强大的功能已被人类深刻的认识到,它正进入人类社会的各个领域并在其所在领域发挥着越来越重要的作用,产生越
9、来越深远的影响。当今社会,各行业的竞争不断加剧,其中停车场收费运输行业也正置身于这种不断加剧的竞争中,行业的发展要求各停车场收费从业者使用更加有效的信息化手段,拓展自己的经营空间,降低运营成本,提高管理和决策效率。但由于国内各方面条件的限制,国内停车场收费企业规模小、数量多,缺少竞争优势,并且技术含量低,大多数只能提供运输和仓储等传统服务,能够提供一揽停车场收费解决方案的企业很少,再加上国外大企业的竞争,使原本就不足以分得一杯羹的国内企业更加难以适应市场的变化。传统的的停车场收费管理过多的手工操作和一些不科学的管理手段,无法满足从业者对企业的全面信息化管理,势必会影响从业者的工作效率,降低了市
10、场的竞争能力。成功的停车场收费从业者应该的将停车场收费企业的经济利益作为运营的最终目的,管理的核心也在于如何提高企业的经济效益。Internet 的开放性、分布性的特点和基于 Internet 的巨大的系统能力使得停车场收费管理突破了时间和空间的限制。网上停车场收费系统以停车场收费从业者的经济效益为目标,为其提供了简单易用、功能强大并且高度灵活的应用工具,激励了从业者的积极性,促使他们为客户提供更加优质的服务,推动了社会文明的进步和发展。随着国内信息化步伐的加快,加之停车场收费企业对行业信息的需求越来越大,促使停车场收费信息网迅速发展,以适应停车场收费行业的市场变化。停车场收费信息网信息的及时
11、性、准确性完全符合国内停车场收费企业对行业信息的要求,它已经成为国内停车场收费企业信息的主要来源。同时,通过对人流、停车场收费、资金流的科学管理和有效控制,提高从业者的工作效率,降低各种经营成本,从而获取持久的利润,代表一种新的管理模式介入,代表一种新的变化甚至是变革,当然这种变革,是停车场收费管理和信息技术的有机结合后的结晶,它给从业者带来更加先进更加高效率的工作模式,可以最大限度地节省人力物力,优化企业资源配置,具有手工管理所无法比拟的优点。这就是本系统在停车场收费运输行业应用的重要意义所在。1.2 国内外发展状况针对现在停车场收费信息系统的发展,在国外停车场收费管理信息系统已经发展进入成
12、熟阶段,并转向复杂功能的研究。在中国虽然起步较晚,但近几年发展却较快,国内企业停车场收费信息系统大部分是面向基本流程控制,如库存控制系统、停车场收费跟踪查询系统等。并且采用传统的客户/服务器模式(C/S)结构。但是随着计算机1网络技术飞速发展,对信息的需求日益增大,国内开始转向研究浏览器/服务器(C/S)模式的开发。在这种结构下,系统的工作界面是通过 IE 浏览器来实现的,极大的方便了停车场收费信息的更新和有效的管理。1.3 本课题研究的目标随着互联网的发展,网络化管理领域已日趋成熟,目前最为明显的是信息管理平台的开发与使用。当然,对于任何停车场收费企业也可采用此方法来加强停车场收费信息的管理
13、,让管理者可以更方便更快捷的了解停车场收费信息,这样可以通过停车场收费管理系统网站平台来加强化停车场收费管理。在停车场收费企业中,停车场收费管理是一项非常重要的工作。使用人工方式管理停车场收费管理不仅效率低下,而且容易出错,安全性很差。并且在实际操作中,数据的查找和更新都不容易实现,容易发生差错,导致了管理费用增加,服务质量难以得到保证,从而影响企业的竞争力。这里设计的智能停车场收费管理信息系统,就可以解决这些问题。1.4 本课题研究的内容本系统为智能停车场收费管理系统,系统主要分为两大部分,一是前台部分,主要完成网上信息浏览及管理,二是后台数据库的连接, 前台信息查询,修改,删除等都是基于后
14、台数据库得以实现的。本系统设计完成后,最终将能实现以下功能:(1)用户登录:用户登录系统使用本系统(2)员工管理:管理企业员工信息(3)会员管理:管理会员信息(4)停车场管理:管理停车场收费信息(5)车库信息:可以查询车库车位的使用情况(6)个人信息:用于用户管理个人信息,及密码修改(7)营业额查询:可以查看停车场营业额情况(8)收费标准设置:设置停车收费标准22 主要用到的技术和工具2.1 MVC 设计模式MVC 思想将一个应用分成三个基本部分:Model(模型)、View(视图)和Controller(控制器)。这=三个部分以最少的耦合协同工作,从而提高应用的可扩展性及可维护性(如图 l
15、所示)。MVC 架构的核心思想是:将程序分成相对独立,而又能协同合作的三个部分。通过使用 MVC 架构,可以降低模块之间的搞合,提供应用的可扩展性。另外,MVC 的每个组件只关心组件内的逻辑,不应与其他组件的逻辑混合。2.2 Struts 技术Struts 作为 MVC 模式的典型实现,对 Model、View 和 Controller 都提供了对应的实现组件。具体的实现如图 2 所示。图 2-1 Struts 框架结构图Struts 的 Model 部分由 ActionForm 和 JavaBean 组成。其中 ActionForm 用于封装用户请求参数,所有的用户请求参数由系统自动封装成
16、ActionForm 对象。该对象被ActionServlet 转发给 Action然后 Action 根据 ActionForm 里的请求参数处理用户请求。而 JavaBean 封装了底层的业务逻辑,包括数据库访问等。在更复杂的应用中JavaBean 所代表的绝非一个简单的 JavaBean可能是 EJB 组件或者其他的业务逻辑组件。Struts 的 View 部分采用 JSP 实现。Struts 提供了丰富的标签库,通过这些标签库可以最大限度地减少脚本的使用。这些自定义的标签库可以实现与 Model 的有效交互,并增加了显示功能。整个应用由客户端请求驱动,当客户端请求被ActionServ
17、let 拦截时ActionServlet 根据请求决定是否需要凋用 Model 处理用户请求,当用户请求处理完成后,其处理结果通过 JSP 呈现给用户。Struts 的 Controller由两个部分组成:系统核心控制器和业务逻辑控制器。其中系统核心控制器对应图2 中的 Actionervlet。该控制器由 Struts 框架提供继承 HttpServlet 类,因此可以配置成一个标准的 Servlet。该控制器负责拦截所有 Http 请求然后根据用户请求决3定是否需要调用业务逻辑控制器,如果需要调用业务逻辑控制器则将请求转发给Action 处理否则直接转向请求的 JSP 页面。业务逻辑控制器
18、负责处理用户请求,但业务逻辑控制器本身并不具有处理能力。而是调用 Model 来完成处理。2.3 Spring 技术常用的中间件解决方案 EJB 技术是一种重量级的容器 必实现 EJB 的接口 具有侵略性依赖于 EJQ 容器并且不能单独运行固定了应用功能不能加以配置。Spring 则是一个解决了许多在 J2EE 开发中常见问题能够替代 EJB 技术的强大框架,它不依赖于任何的组,是一种轻量级的容器因此它可以有效地组织中间件对象而不管是否还使用了 EJB 技术,同时 Spring 既是全面的又是模块化的它不是一个强制性框架,我们可以选择某个组件独立使用 。其中 Spring Core 是 Spr
19、ing 的基础它提供了一个 IOC 容器管理业务组件 而 Spring DAO 和 Spring ORM 不仅提供数据访问的抽象模块 还特别集成了对Hibernate 的支持并且提供了缓冲连接池和事务处理等重要的服务功能保证了系统的性能和数据的完整性。IOC(Inversion of Control)控制反转 /DI(Dependence Injection 依赖注入)机制是 Spring 框架的核心,IOC 就是由容器控制组件之间的关系 而非传统实现中由程序代码直接操控。这种控制权由程序代码到外部容器的转移,是谓“反转” 。DI 是对 IOC更形象的解释,即由容器在运行期中动态地将依赖关系比
20、如构造参数、构造对象或接口 注入到组件之中。Spring 采用设值注入机制通过配置文件管理组件的协作对象,创建可以构造组件的IOC 容器。这样不需要编写工厂模式、单例模式或者其他构造的方法 就可以通过容器直接获取所需的业务组件。2.4 Hibernate 技术关系数据库作为主流的数据库技术,它的非对象化的管理模式给面向对象开发带来了异构的数据结构,加大了开发难度。数据库的对象化技术尝试通过两种方式解决上述问题一种是对象数据库技术(ODBMS) ,但是 ODBMS 尚未成熟,也不能取代现今主流的关系数据库,并不实用。另一种是已经被广泛采用的 O/R Mapping 对象关系映射技术,包装关系数据
21、库数据为对象 ,使之提供面向对象的接口。Hibernate 就从属于后者。Hibernate 是 O/R Mapping 技术的一种 Java 实现。Hibernate 过映射文件或者是注解方式将数据库表映射为 Java 类。表中的每条数据视为一个类实例,而数据列值映射为实例属性。Hibernate 的这些持久对象是基于 Java Bean 和 Java Collections 的,而且它提供的查询语言 HQL 也是一种 OO 语言,语法类似 SQL,只是把 SQK 里的 TABLE 和COLUMN 用对象和对象属性代替 这样通过持久性对象将数据库数据以同构的数据对象形式传送到其他层中加以处理
22、 从此开发者可以以 OO 思想开发数据处理模块。42.5 JSP 介绍JSP,即Java Server Page,Java应用页面程序。作为开发动态页面的一种技术,JSP是当前大中型企业应用软件首选的开发路线之一。而且JSP是J2EE的重要组成部分,开发人员可以在JSP中获得J2EE的众多优点。学习JSP也是J2EE入门的必经之路。JSP 既依赖于也得益于 J2EE 技术。 “一次编写,随处运行”的可移植性使用户可以专注于 JSP 的开发,而无须考虑系统层面的问题;Java 的开放特性使市面上涌现出了众多的 Web 框架可供采纳;面向对象的设计,为更加轻松地构筑安全稳定的 Web 在线系统提供
23、了基础保障。JSP秉承了J2EE高贵的血统,却又带着平易近人的个性。JSP本质上是一个Java程序,具备Java语言一切无与伦比的优势。相比依赖于VBScript代码的ASP,以及依赖于Perl语言的PHP等其他Web编程语言,JSP有着严格的Java语法支持,可以和Java Bean无缝整合。ASP采用了解析执行的机制,而JSP则是先编译后执行。因此,在第一次访问时JSP比ASP要慢,但是JSP的执行则比每次都解析执行的ASP快若干个数量级。微软随后推出了ASP.NET,号称提供了丰富的面向对象类库,引入中间语言的概念来支持多种语言,完整地集成了XML及Web Service的支持,利用代码
24、托管机制避免危害服务器,并期盼以此代替ASP。事实上ASP.NET的框架设计与J2EE框架十分类似,虽然弥补了ASP之前的缺陷,但是,其对于Windows平台的依赖性以及.NET本身的封闭性却依然存在。尽管现在有Mono计划将所有的开发转移到Linux,但是由于各种原因,Mono有着众多的制肘,并不被业界看好。当然,对于Windows环境下的中小型应用程序,jsp确实是不错的选择。JSP是线程高度并行的,可以充分利用硬件资源。另外,Java语言与平台无关,开发者可以将JSP部署在几乎任何操作系统上,UNIX系统可以为JSP提供稳定可靠的安全运行环境;利用集群技术还可以把多台主机联合起来服务于J
25、SP应用程序。因此,JSP对于高可靠性、高性能要求的企业级应用系统有较强的吸引力。从开发者的角度考虑,JSP是开发Web应用程序的首选。JSP支持JavaBean组件,也就获得了众多Java厂商的有力支持,开发者可以利用JavaBean来完成所有Java能实现的功能,如数据库连接池、图形绘制、文件IO操作、XML解析、WebService调用与发布等。Struts,Webwork,Tapstry,Velocity,Hibernate等开源框架为Web应用开发者简化了开发流程,提高了代码质量,从而降低了学习门槛和开发成本。JSP遵循J2EE规范所采用的分层结构也使得代码容易组织维护,各个独立的层
26、次分别针对特定的编程领域,在某个领域发生变化的时候,只需要在对应层次进行针对性的修改,而不会影响到其他层次的代码。而相对于Servlet这种Java类,JSP又有着特定的优势。从前面的例子可以看出,要完成一个简单JSP页面具有的功能,需要编写大量的Servlet代码,而且,从代码上5根本看不出来生成的HTML文档结构。另外,JSP中双引号等特殊字符,在Servlet中都需要进行转义处理,又进一步降低了程序的可读性。Servlet不能有效地利用原型页面。事实上,在JSP中,还可以使用标签等特性,进一步将JSP中的 Java代码导致的不利因素削弱。总之,使用 JSP 可以降低开发门槛,提高程序可读
27、性,开发出高性能的跨平台企业级软件。所以在线汽车销售网站采用了 JSP 技术。2.6 Mysql 简介MYSQL 是sun公司在关系数据库管系统(RDBMS)方面的开发成果。其主要目的是尽可能快地存储、管理和检索大量数据。我们将使用MYSQL存储与知识系统网站相关的所有信息,这些信息会由应用程序逻辑动态放置在网页中。Mysql是sun 公司推出的Mysql 数据库管理系统的最新版本该版本继承了Mysql 6.0 版本的优点同时又比它增加了许多更先进的功能具有使用方便可伸缩性好与相关软件集成程度高等优点可跨越从运行Microsoft Windows 2000 的膝上型电脑到运行Microsoft
28、 Windows XP的大型多处理器的服务器等多种平台使用。2.7 TomcatTomcat是一个开放源代码、运行Serv1et和JSPWeb应用软件的基于Java的Web应用软件容器。Tomcat是由Apache一Jakarta子项目支持,并由来自开放代码Java社区的志愿者进行维护。TomcatServer是根据servlet和JSP规律执行的,因此我们就可以说Tomcatserver也实行了Apache一Jakarta规比绝大多数商业应用软件服务器要好。Tomcat很可能成为下一代Java Web Server的主流。因为Tomcat受到Sun的全力支持,并由非常强大的开发组织apach
29、e来进行发展,这一工程被称Jakarta计划。从战略上看,Sun现在正借助ApaChe的影响来开发Server端Java技术,这就是Tomcat。因此可以相信Tomcat己经或者即将是一个较理想Jsp&Servlet开发和支撑平台。相对地,JSWDK只是一个简化的服务器平台,和稳定程度都比较有限,而且实际上S幽并不许可将它作为Iflternet上的平台。在SUTN公司的大力支持下,Tomcat将成为以后Web平台的主流平台。双击下载的 Tomcat 安装程序,连续单击“下一步“,直至安装结束,只在选择安装路径时更改为 d:Tomcat 7.0。设置环境变量:在“我的电脑”属性中设置环境变量:先测试一下 Tomcat 服务器。首先启动 Tomcat 服务器,执行 Tomcat 目录 bin 子目录下的 startup-using-launcher.bat 程序,会出现一个 Dos 窗口,几秒钟后 Dos 窗口会自动消失,并在任务栏中出现标题为 Catalina 的小窗口,表明服务器已启动成功了。然后打开浏览器,在地址栏中输入 http:/localhost:8080(Tomcat 默认端口为 8080),如果看到有一个小猫就证明 Tomcat 成功运行。可直接关闭窗口退出 Tomcat.建立站点:将程序发布包拷贝到 webapps 目录下,启动 Tomcat。在地址栏中输入