1、1本科毕业论文(20 届)实时路况系统的设计与实现所在学院专业班级 计算机科学与技术学生姓名指导教师完成日期2摘要随着我国经济建设的蓬勃发展,城市的人口和机动车拥有量也在急剧增长,交通安全问题日益突出。对干线公路运行状况信息进行有效及时的监控和发布也是交通管理的迫切需求。而对于路况的监控和发布,需要更加流畅的视频系统。Html5 应运而生,很好的解决了这一问题,HTML5 是近十年来 Web 标准最巨大的飞跃。HTML5 并非仅仅用来表示Web 内容,它也将 Web 带入一个成熟的应用平台,在这个平台上,视频,音频,动画,以及同电脑的交互都被标准化。随着 HTML5 的发展,各个浏览器都已经或
2、即将支持HTML5。在大潮流的推动下,微软也表示将把 HTML5 作为 IE9 的核心,并将全力投入HTML5。本作品运用 html5 成熟的视频动画标准,加以 SSH 框架为辅助,实现了对实时路况信息的采集,处理,发布,为广大用户和管理部门提供了便捷服务,具有广阔的发展前景。关键字:实时路况系统、HTML5、SSH、JSP、Jboss 3AbstractWith the vigorous development of Chinas economic construction, urban population and vehicle ownership is also growing sha
3、rply, traffic safety problem increasingly prominent. For arterial highway running status information for effective monitoring and timely release the urgent needs of traffic management. For traffic monitoring and publishing, video system need to be more fluent. Html5 arises at the historic moment, ve
4、ry good to solve the problem, Html5 is Web standards the huge leap in nearly a decade. HTML5 is not only used to represent Web content, it will also be the Web into a mature application platform, and on the platform, video, audio, animation, and interactions with the computer have been standardized.
5、 With the development of HTML5, each browser has been or is about to support HTML5. Under the impetus of the trend, Microsoft said it would put the HTML5 as the core of IE9, and it would fully into HTML5. This work using html5 video animation of the mature standard, tries to SSH framework for auxili
6、ary, realized the real-time traffic information collection, processing, distribution, provides convenient services for the masses of users and management department, has a broad development prospects.Keywords: Live traffic system, HTML5, SSH, JSP, Mysql4目录1绪论 .61.1 选题的背景和意义 .61.2 国内外研究现状和发展趋势 .62理论技
7、术支持 .62.1 实时路况系统简介 .62.2 相关技术支持 .62.2.1SSH 体系结构 .62.2.2HTML5 简介 .72.2.3CSS 简介 .72.2.4JSP 技术简介 .72.2.5Mysql 数据库 .83.系统的分析与设计 .43.1 系统开发运行环境 .83.2 需求分析 .83.2.1 可行性分析 .83.2.2 系统功能分析 .83.3 总体设计 .93.3.1 逻辑结构设计 .93.3.2 用户登录流程图 .93.3.3 路况查询流程图 .103.4 系统详细设计 .113.4.1 系统 E-R 图 .113.4.2 数据字典 .133.4.3 各模块流程图 .
8、144系统的实现 .164.1 目录结构 .164.2 框架配置文件 .174.2.1Struts 配置文件 .174.2.2Spring+Hibernate 配置文件 .184.3 系统权限管理 .194.4 用户管理 .204.4.1 用户登录 .2054.4.2 用户注册 .234.4.3 用户列表 .254.4.4 用户信息修改 .274.5 路况信息显示 .285总结 .30参考文献 .3161绪论1.1选题背景和意义随着我国经济建设的蓬勃发展,城市的人口和机动车拥有量也在急剧增长,交通流量日益加大,交通拥堵现象日益严重,交通事故时有发生,为交通管理部门带来越来越大的压力,也给人们的
9、出行造成很大不便和潜在的危险。因此,深入研究解决城市交通问题有着极为重要的现实意义。要建设城市交通问题,就必须准确掌握交通信息,及时处理和发布路况信息,实现快速,有效,安全的交通管制。为实现这种需求,就要有一款集路况信息采集上传,数据分析,交通管制,路况发布于一身的系统软件。本系统应用技术,基于框架很好的实现了以上功能。HTML5 是用于取代 1999 年所制定的 HTML 4.01 和 XHTML 1.0 标准的 HTML 标准版本,现在仍处于发展阶段,但大部分浏览器已经支持某些 HTML5 技术。 HTML 5 有两大特点:首先,强化了 Web 网页的表现性能。其次,追加了本地数据库等 W
10、eb 应用的功能。广义论及 HTML5 时,实际指的是包括 HTML、CSS 和JavaScript 在内的一套技术组合。它希望能够减少浏览器对于需要插件的丰富性网络应用服务(plug-in-based rich internet application,RIA) ,如 Adobe Flash、Microsoft Silverlight,与 Oracle JavaFX 的需求,并且提供更多能有效增强网络应用的标准。1.2国内外研究现状和发展趋势目前世界上最先进的卫星定位导航系统当属 GPS,GPS 是英文 Global Positioning System(全球定位系统)的简称。GPS 起始于
11、 1958 年美国军方的一个项目,1964 年投入使用。20 世纪 70 年代,美国陆海空三军联合研制了新一代卫星定位系统 GPS 。主要目的是为陆海空三大领域提供实时、全天候和全球性的导航服务,并用于情报收集、核爆监测和应急通讯等一些军事目的,经过 20 余年的研究实验,耗资 300 亿美元,到 1994年,全球覆盖率高达 98%的 24 颗 GPS 卫星星座己布设完成。近年来,我国也在卫星定位导航方面投入巨大力量,北斗卫星导航系统是中国自行研制的全球卫星定位与通信系统(BDS),是继美全球定位系统(GPS)和俄 GLONASS 之后第三个成熟的卫星导航系统。系统由空间端、地面端和用户端组成
12、,可在全球范围内全天候、全天时为各类用户提供高精度、高可靠定位、导航、授时服务,并具短报文通信能力,已经初步具备区域导航、定位和授时能力,定位精度优于 20m,授时精度优于100ns。2012 年 12 月 27 日,北斗系统空间信号接口控制文件正式版正式公布,北斗导航业务正式对亚太地区提供无源定位、导航、授时服务。鉴于上述卫星定位导航系统的日趋成熟,该系统充分运用标准,综合应用了 SSH、Mysql 等技术,并具有用户自主上传和获取信息功能与管理员对系统进行管理等功能,很好的解决了日益严重的交通问题。2理论技术支持2.1实时路况系统简介实时路况,是针对当今城市交通道路拥堵畅通情况所提出的一个
13、概念。实时路况也是交通信息频道的简称。在欧洲,实时路况已经是一项成熟的车载智能交通导航技术。实时路况能实时反映区域内交通文字路况,指引最佳、最快捷的行驶路线,提高道路和车辆的使用效率。7一部分 GPS 产品会在机身内置 TMC 实时路况接收器,但是大部分的 GPS 的 TMC 实时路况功能都是作为 GPS 的选配功能,需要额外选配 TMC 实时路况接收器。而车载导航一体机则通过内置的接收模块或者 3G 网络直接获取路况信息。2.2相关技术简介2.2.SSH体系结构SSH 为 Secure Shell 的缩写,由 IETF 的网络工作小组(Network Working Group)所制定;SS
14、H 为建立在应用层和传输层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。S S H 最初是 U N I X 系统上的一个程序,后来又迅速扩展到其他操作平台。S S H 在正确使用时可弥补网络中的漏洞。S S H 客户端适用于多种平台。几乎所有 U N I X 平台包括 H P - U X、L i n u x、A I X、S o l a r i s、Digital UNIX、I r i x,以及其他平台都可运行 S S H。2.2.2HTML5简介HTML5 是用于取代 1999 年所制定的 H
15、TML 4.01 和 XHTML 1.0 标准的 HTML 标准版本,现在仍处于发展阶段,但大部分浏览器已经支持某些 HTML5 技术。HTML 5 有两大特点:首先,强化了 Web 网页的表现性能。其次,追加了本地数据库等 Web 应用的功能。广义论及 HTML5 时,实际指的是包括 HTML、CSS 和 JavaScript 在内的一套技术组合。它希望能够减少浏览器对于需要插件的丰富性网络应用服务(plug-in-based rich internet application, RIA),如 Adobe Flash、Microsoft Silverlight,与 Oracle JavaFX
16、 的需求,并且提供更多能有效增强网络应用的标准。2.2.3CSS简介CSS 是英语 Cascading Style Sheets(层叠样式表单)的缩写,它是一种用来表现HTML 或 XML 等文件式样的计算机语言。 CSS 目前最新版本为 CSS3,能够真正做到网页表现与内容分离的一种样式设计语言。相对于传统 HTML 的表现而言,CSS 能够对网页中的对象的位置排版进行像素级的精确控制,支持几乎所有的字体字号样式,拥有对网页对象盒模型的能力,并能够进行初步交互设计,是目前基于文本展示最优秀的表现设计语言。2.2.4JSP技术简介 javascript 是一种脚本语言,可用来创建客户端脚本和服
17、务器端脚本。JSP(Java Server Pages)是由 Sun Microsystems 公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP 技术有点类似 ASP 技术,它是在传统的网页 HTML 文件(*.htm,*.html)中插入 Java 程序段(Scriptlet)和 JSP 标记(tag),从而形成 JSP 文件(*.jsp)。 用 JSP开发的 Web 应用是跨平台的,既能在 Linux 下运行,也能在其他操作系统上运行2.2.5 JSP工作原理 在一个 JSP 文件第一次被请求时,JSP 引擎把该 JSP 文件转换成为一个 servlet。而这个引擎本身也是一个
18、 servlet,在 JSWDK 或 WEBLOGIC 中,它就是 JspServlet。 JSP 引擎先把该 JSP 文件转换成一个 Java 源文件,在转换时如果发现 jsp 文件有任何语法错误,转换过程将中断,并向服务端和客户端输出出错信息;如果转换成功, JSP 引擎用javac 把该 Java 源文件编译成相应的 class 文件。然后创建一个该 SERVLET 的实例,该SERVLET 的 jspInit()方法被执行,jspInit()方法在 servlet 的生命周期中只被执行一次。然后 jspService()方法被调用来处理客户端的请求。对每一个请求,JSP 引擎创建一个新
19、的线程来处理该请求。如果有多个客户端同时请求该 JSP 文件,则 JSP 引擎会创建多个线程。每个客户端请求对应一个线程。以多线程方式执行可大大降低对系统的资8源需求,提高系统的并发量及响应时间.但应该注意多线程的编程限制,由于该 servlet始终驻于内存,所以响应是非常快的。如果.jsp 文件被修改了,服务器将根据设置决定是否对该文件重新编译,如果需要重新编译,则将编译结果取代内存中的 servlet,并继续上述处理过程。虽然 JSP 效率很高,但在第一次调用时由于需要转换和编译而有一些轻微的延迟。此外,如果在任何时候如果由于系统资源不足的原因,JSP 引擎将以某种不确定的方式将 serv
20、let 从内存中移去。当这种情况发生时 jspDestroy()方法首先被调用, 然后 servlet 实例便被标记加入“垃圾收集“处理。 jspInit()及 jspDestory()格式如下:可在 jspInit()中进行一些初始化工作,如建立与数据库的连接,或建立网络连接,从配置文件中取一些参数等,在 jspDestory()中释放相应的资源。2.3MySQL数据库 MySQL 是最受欢迎的开源 SQL 数据库管理系统,它由 MySQL AB 开发、发布和支持。MySQL AB 是一家基于 MySQL 开发人员的商业公司,它是一家使用了一种成功的商业模式来结合开源价值和方法论的第二代开源
21、公司。MySQL 是 MySQL AB 的注册商标。MySQL 是一个快速的、多线程、多用户和健壮的 SQL 数据库服务器。MySQL 服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass-deployed)的软件中去。3.系统的分析与设计3.1系统开发运行环境鉴于系统的开发语言和数据库,采用如下的开发环境系统模式:B/S开发环境: Windows 2000NT JDK1.6WEB 服务器:Jboss硬件实现: Pentium2.4G 1G 内存 80G 硬盘开发语言: Java数 据 库: MySQL开发工具: MyEclipse10 预期成果: 一个可扩展的基于
22、MVC 模式的实时路况系统3.2需求分析3.2.1可行性分析在有限的时间中,完成高品质的系统,不得不提前考虑该系统的可行性。可行性的分析包括:经济可行性、技术可行性、操作可行性等等。(1)经济可行性:本系统采用 B/S 系统模式,采用开源的服务器和数据库,节约一定的财务支出,当系统建成之后,可以实现资源共享,节约用户的出行时间,还带来了经济效益,从经济上说是可行的。(2) 技术可行性我们已经系统的学习了 mysql,java,web 系统开发课程,并且已经深入学习了HTML5,CSS3,js,SSH 框架,ajax 等相关技术,为项目的完成提供了技术保障。(3) 操作可行性本系统逻辑结构清晰,
23、操作简单,易于理解,只需通过简单指导,系统管理员、以及普通用户均能进行操作,操作可行性是完全可行的。综上所述:该实时路况系统效率高,成本低,出错率低,使用户的使用,总体上来说是完全可行的。3.2.2系统功能分析9该实时路况系统实现以下管理功能:用户管理,路况查询,路况维护,监控维护,基础设置等。用户管理模块:该模块的主要功能是实现对用户的管理工作,包括用户的注册,登陆以及用户的修改删除功能。用户在注册时,利用 ajax 实现了在本页面内的刷新,来判断用户是否已经存在,并用 session 保存用户的信息。路况查询模块:该模块的主要是利用百度地图 API 完成用户可以定位具体的位置,查询起始点到
24、终止点的路线方案,以及放大缩小地图。路况维护模块:该模块主要功能是利用 SSH 完成路况信息的添加,路况的搜索,以及对路况的修改和删除操作还有定位等功能。监控维护模块:该模块的主要功能是利用 SSH 实现视频的上传,监控的搜索,以及对监控的修改和删除功能,这个模块将具体位置的视频录像清晰的展示给用户,使得用户准确的了解路况情况。基础设置模块:该模块的主要功能是利用 SSH 实现图标的上传,对图标的列表显示,以及图标的修改和删除等功能。3.2总体设计3.2.1实时路况逻辑结构设计该系统拥有管理员和普通用,逻辑结构如图 3-1 所示。管理员 普通用户用户管理路况查询监控维护路况维护基础设置路况查询监控搜索图 3-1 系统角色权限图3.2.2用户登录流程图登陆主页10输入用户名密码输入判断是管理员 是普通 用户进入管理员页面进入用户页面不合法重新输入图 3-2.用户登录流程图3.2.4.路况查询流程用户登录