基于J2EE框架的GoogleMaps拼车网设计与实现毕业论文

2018-11-14 13:02

毕业设计(论文)原创性声明和使用授权说明

原创性声明

本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。

作 者 签 名: 日 期: 指导教师签名: 日 期:

使用授权说明

本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。

作者签名: 日 期:

郑 重 声 明

本人呈交的学位论文,是在导师的指导下,独立进行研究工作所取得的成果,所有数据、图片资料真实可靠。尽我所知,除文中已经注明引用的内容外,本学位论文的研究成果不包含他人享有著作权的内容。对本论文所涉及的研究工作做出贡献的其他个人和集体,均已在文中以明确的方式标明。本学位论文的知识产权归属于培养单位。

本人签名: 日期:

2

摘 要

随着拼车的发展,人们开始通过网络手段发布和获取拼车信息。目前的拼车网在描述拼车线路时大多基于文字形式,缺乏直观性,并且线路匹配撮合效率较低。为了解决当前拼车网使用文字描述线路的弊端,本文对基于J2EE框架Google Maps拼车网系统的设计和实现进行分析研究。

本文首先介绍WebGIS的概念,AJAX、Struts、Spring、Hibernate等技术,以及MySQL的空间扩展。接着从功能、流程、模块和数据库的角度,讨论Google Map拼车网的系统设计。然后分析搜索匹配、相似度计算等系统核心算法,研究应用Spring,Struts和Hibernate等J2EE框架搭建项目架构,探讨有关框架与Google Maps地理信息结合时产生的问题和解决方案。最后以搜索模块为例,按用户界面、数据提交、后台处理、结果显示的流程,介绍了系统的实现。

本文在完成以上工作的情况中,对部分设计和实现进行了创新。在一般J2EE系统的基础上,结合项目的需求和特点,提出使用符合OpenGIS规范的空间扩展数据类型来存储Google Maps地理信息。分析了线路匹配的相关核心算法。探讨和解决了使用J2EE框架与空间地理信息结合的问题和解决方案。

本文所设计和实现的Google Maps拼车系统,应用Spring,Struts,Hibernate等J2EE框架搭建系统架构,使用MySQL的空间扩展存储地理信息,实现了根据Google Maps地理信息进行线路匹配撮合。在WebGIS的应用越来越广泛的今天,该系统具有较广泛的应用价值,是实现基于J2EE拼车网系统的一个很好的解决方案。

关键词:J2EE;Google Maps;WebGIS;MySQL空间扩展;线路匹配

ABSTRACT

People start to issue and get the car sharing information on the Internet for the development of car sharing. Now most of the car sharing system online takes the way of text to describe the route of the car sharing. It’s lack of visual directly. The system could only match the routes by the text which provides limited information of the route and it brings low efficiency. Google Maps is a free map service provided by Google inc., and the API is released. J2EE is a system structure of Java 2 platform for simplifying the development, deployment and management of the complex problems. It has many advantages such as easy maintenance, good portability, high reusability.

In order to solve the text description disadvantages of the current car sharing system on the Internet, the project comes up with a solution which is base on J2EE Framework and shows the route on the map directly and matches the routes by the map information.

This paper go to studied the design and implementation of the Google Maps car sharing system project. It discusses the design of the Google Map car sharing system, including functional analysis, process analysis, module design and database design. It analyze core algorithm of the system, including the search of route and how to compute the similarity of two routes. It researches how to apply J2EE framework such as Spring, Struts and Hibernate to build project, and explores the problems and solutions of using these frameworks combined with geographic information Google Maps. It takes search module as an example to introduce the realization of the system.

Key words: J2EE; Google Maps; WebGIS;MySQL spatial-extensions; line match

目 录

第1章

1.1 1.2 1.3 1.4

绪论

研究背景 ........................................................................................................ 1 研究目的和意义 ............................................................................................ 1 国内外研究发展现状 .................................................................................... 2 本文研究内容及技术路线 ............................................................................ 2

第2章

2.1 2.2 2.3 2.4 2.5 2.6 2.7

技术简介

WebGIS ............................................................................................................ 4 AJAX ................................................................................................................ 5 Struts框架 ................................................................................................... 6 Spring框架 ................................................................................................... 7 Hibernate框架 ............................................................................................. 8 MySQL的空间扩展 ......................................................................................... 9 本章小结 ........................................................................................................ 9

第3章

3.1 3.2 3.3 3.4

系统设计

功能分析 ...................................................................................................... 10 流程分析 ....................................................................................................... 11 模块设计 ...................................................................................................... 12 数据库设计 .................................................................................................. 21 3.4.1 实体 ..................................................................................................... 21 3.4.2 E-R图 .................................................................................................. 25 3.5 本章小结 ...................................................................................................... 26

第4章 系统实现方法及关键技术研究

4.1 核心算法 ...................................................................................................... 27

4.1.1 点选匹配 ............................................................................................. 27 4.1.2 框选匹配 ............................................................................................. 28 4.1.3 线路相似度 ......................................................................................... 28 4.2 实现方法 ...................................................................................................... 29

4.2.1 Struts框架与Ajax交互 .................................................................. 29 4.2.2 Hibernate框架与空间数据类型 ...................................................... 30 4.2.3 Spring框架的应用 ............................................................................ 31 4.3 本章小结 ...................................................................................................... 32

第5章 系统实现

5.1 模块实现 ...................................................................................................... 33

5.1.1 搜索模块 ............................................................................................. 33 5.1.2 其它模块 ............................................................................................. 36 5.2 本章小结 ...................................................................................................... 37

第6章 结论与展望

参考文献 ..................................................................................................................... 39 致 谢 ..................................................................................... 错误!未定义书签。

6

第1章

1.1 研究背景

绪论

拼车,也称“合乘”,是一种新兴的现象。当人们因为上下班或出游等原因需要乘坐车辆,而路线相同的乘客一起合乘同一辆车子,车费由乘客平均分摊的现象即为拼车。拼车对环境、交通和乘客自身都有好处,既减少了车辆的行驶,有利于环保,节约能源,缓解城市交通压力,又有利于乘客,降低乘车费用。

Google Maps是Google提供的免费地图服务,访问该服务的URL为http://maps.google.com,它提供了交通地图、地形地图和不同分辨率的卫星地图,以及基于地图的一些应用。Google公开了该服务的API,开发者可以通过调用Google Maps API开发地图应用。Google Maps API为开发Maps有关的应用提供了便利,现今基于Google Maps的应用系统越来越多,从而对Google Map应用系统的开发效率、维护成本、扩展性等提出了更高的要求。

1.2 研究目的和意义

随着拼车的发展,拼车的行为已经不局限于相互认识的人之间。人们开始借

助网络等手段发布拼车信息进行拼车。有关的拼车信息发布网站开始诞生。但传统的拼车网大多采用文字描述的方式描述线路,乘客必须对线路经过的有关地点名称比较熟悉才能准确了解行驶的线路。而乘客与车主之间的线路是否匹配只能通过文字去比较,给系统的撮合带来了很大的局限性。

利用Google Maps API将拼车信息在地图上进行显示,在地图上标注路线,便于用户更直观的了解线路信息。而系统也能通过地图的线路信息进行线路匹配,提高了准确率和撮合效率。

J2EE(Java 2 Platform Enterprise Edition)是一套不同于传统应用开发的技术架构,包含许多组件,可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值。使用J2EE框架进行开发是当今web应用程序较流行的开发方式,具有低耦合、维护成本低、开发效率高、扩展性良好等特点。

基于Google Maps服务的应用系统相对其它系统有自身的特点,其中包括了对空间地理信息的传递、存储和处理等问题。随着基于Google Maps服务的应用

1

系统的发展,研究基于J2EE框架Google Map拼车网系统的设计与实现,对提高Google Maps的相关应用系统开发和维护有重要意义。

1.3 国内外研究发展现状

随着拼车的发展,人们拼车的对象不再局限于相互认识的人之间,而是开始借助网络的手段发布和获取拼车信息,相互不认识但有着相同线路的乘客也能一起拼车节省费用。国内外出现了各种各样的拼车网以方便用户发布和获取拼车信息。

国外的拼车网在描述线路时形式比较多样,有的完全基于文字描述,例如Cambio(http://www.cambiocar.com/);有的采用静态地图结合文字,例如Car to Go(http://www.cartogo.com/);也有的应用了Google Maps服务,例如CarShare Vermont(http://www.carsharevt.org/home)、Grand River CarShare(http://www.peoplescar.org/)。其中应用Google Maps服务的这些拼车网仅仅使用了Google Maps服务的一些简单功能,例如地点标示等,而在线路方面仍以文字描述为主,并且没有提供通过线路进行撮合的功能。

国内的拼车网大多基于文字描述,其中规模较大的包括武汉拼车网(http://www.pincheol.com/)、温州拼车网(http://www.wzpinche.com/)、重庆拼车网(http://www.cqpcw.com.cn/)等,特点是地域性比较强。部分拼车网提供了本市静态地图,便于用户查看,但对于线路的描述和撮合仍是基于文字进行,甚至没有撮合系统仅仅提供信息发布。

J2EE是一套相对成熟的体系架构。国内外对于J2EE架构已经有较多的研究,传统的J2EE架构是以EJB(Enterprise JavaBeans)为核心的体系结构。然而J2EE的相关技术仍在不断的发展,以Spring、Hibernate、Struts为代表的很多基于J2EE的框架也在慢慢发展成熟并投入实际应用。

1.4 本文研究内容及技术路线

本文主要研究基于J2EE框架的Google Maps拼车网系统的设计和实现。首先介绍WebGIS的概念,AJAX、Struts、Spring、Hibernate等技术,以及MySQL的空间扩展。接着从功能、流程、模块和数据库的角度,讨论Google Map拼车网的系统设计。然后分析搜索匹配、相似度计算等系统核心算法,研究应用Spring,

2

Struts和Hibernate等J2EE框架搭建项目架构,探讨有关框架与Google Maps地理信息结合时产生的问题和解决方案。最后以搜索模块为例,按用户界面、数据提交、后台处理、结果显示的流程,介绍了系统的实现。

本文技术路线如图1.1所示。

WebGIS, AJAX, Struts框架, Spring框架, Hibernate框架,MySQL的空间扩展 技术简介 系统设计 功能分析,流程分析,模块设计,数据库设计 实现方法和关键技术研究 核心算法,实现方法 系统实现 模块实现

图1.1 本文技术路线

3

第2章 技术简介

Google Map拼车网系统是一个基于J2EE框架的WebGIS系统。常用的J2EE框架包括Spring,Struts,Hibernate框架。Google Maps API的调用需要使用AJAX技术。MySQL遵从OGC的规范实现了空间扩展。本章将对WebGIS,AJAX,Spring框架,Struts框架,Hibernate框架,MySQL的空间扩展等相关概念和技术进行介绍。

2.1 WebGIS

WebGIS是当今GIS应用方面非常流行的技术。WebGIS是指基于Internet平台进行信息发布、数据共享、交流协作。客户端应用软件采用WWW协议,实现GIS信息的在线查询和业务处理等功能。运行于因特网上的地理信息系统,是利用Internet技术来扩展和完善GIS的一项新技术,其核心是在GIS中嵌入HTTP和TCP/IP标准的应用体系,实现Internet环境下的空间信息管理。WebGIS有多主机、多数据库与多终端,通过Internet连接组成,具有B/S结构,服务器端向浏览器端提供信息和服务,浏览器获得各种空间信息和应用。

WebGIS是Internet技术应用于GIS开发的产物。GIS通过WWW功能得以扩展,真正成为一种大众使用的工具。从WWW的任意一个节点,Internet用户可以浏览WebGIS站点中的空间数据、制作专题图,以及进行各种空间检索和空间分析,从而使GIS进入千家万户。WebGIS具有以下特点:

(1)全球化的客户/服务器应用。全球范围内任意一个WWW节点的Internet用户都可以访问WebGIS服务器提供的各种GIS服务,甚至还可以进行全球范围内的GIS数据更新。

(2)真正大众化的GIS。由于Internet的爆炸性发展,Web服务正在进入千家万户,WebGIS给更多用户提供了使用GIS的机会。现在流行的WebGIS平台有: ARCIMS;TopMap World;MapXtreme等国内外成熟产品。WebGIS可以使用通用浏览器进行浏览、查询,额外的插件(plug-in)、ActiveX控件和Java Applet通常都是免费的,降低了终端用户的经济和技术负担,很大程度上扩大了GIS的潜在用户范围。而以往的GIS由于成本高和技术难度大,往往成为少数专家拥有的专业工具,很难推广。

4

(3)良好的可扩展性 。WebGIS很容易跟Web中的其他信息服务进行无缝集成,可以建立灵活多变的GIS应用。

(4)跨平台特性。在WebGIS以前,尽管一些厂商为不同的操作系统(如:Windows、UNIX、Macintosh)分别提供了相应的GIS软件版本,但是没有一个GIS软件真正具有跨平台的特性。而基于Java的WebGIS可以做到“一次编成,到处运行 (write once, run anywhere)”,把跨平台的特点发挥得淋漓尽致。 据目前的WebGIS架构来分析,主要分两种:

1. 图片式的WebGIS,也叫做栅格地图。目前主要通过VML的方式实现矢量地图。

2. 基于控件的矢量地图,如ActiveX, Java Applet等。 自Google Maps发布以来,图片式WebGIS越来越盛行。

2.2 AJAX

AJAX(Asynchronous Javascript and XML,异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。AJAX 不是新的编程语言,而是一种使用现有标准的新方法。AJAX是基于XMLHttpRequest对象,以Javascript、CSS控制显示,XML为数据传输载体,多种技术结合使用的方法。

传统的web应用通过提交表单向web服务器发送请求。服务器接收并处理传来的表单,然后返回一个新的网页。这个做法浪费了许多带宽,因为在前后两个页面中的大部分HTML代码往往是相同的。由于每次应用的交互都需要向服务器发送请求,应用的响应时间就依赖于服务器的响应时间。这导致了用户界面的响应比本地应用慢得多。与此不同,AJAX应用可以仅向服务器发送并取回必需的数据,它使用SOAP或其它一些基于XML的web service接口,并在客户端采用JavaScript处理来自服务器的响应。因为在服务器和浏览器之间交换的数据大量减少,结果用户能看到响应更快的应用。同时很多的处理工作可以在发出请求的客户端机器上完成,所以Web服务器的处理时间也减少了。使用Ajax的最大优点,就是能在不更新整个页面的前提下维护数据。这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息。

JavaScript——AJAX的概念中最重要的部分。JavaScript是一种粘合剂,使AJAX应用的各部分集成在一起。在AJAX中JavaScript主要被用来传递用户界面

5

上的数据到服务端并返回结果。XMLHttpRequest对象用来响应通过HTTP传递的数据,一旦数据返回到客户端就可以立刻使用DOM将数据放到网面上。

XMLHttpRequest——XMLHttpRequest对象在大部分浏览器上已经实现而且拥有一个简单的接口允许数据从客户端传递到服务端,但并不会打断用户当前的操作。使用XMLHttpRequest传送的数据可以是任何格式,虽然从名字上建议是XML格式的数据。

XML——由于XPath和XSLT等XML技术比较成熟,AJAX选择XML作为数据交换格式。XSLT可以被用在客户端和服务端,它能够减少大量的用JavaScript编写的应用逻辑。

CSS——为了正确的浏览AJAX应用,CSS被应用到AJAX中。CSS提供了从内容中分离应用样式和设计的机制。

服务器端——和传统web不同的是,接收到请求后,从服务器端返回的是XML文档而不是HTML文档。

2.3 Struts框架

Struts框架具有组件的模块化,灵活性和重用性的优点,同时简化了基于MVC的web应用程序的开发。Struts清晰地区分控制器,视图和模型,从而简化了开发应用程序过程。

Struts框架中包括三个部分:模型,视窗和控制器。

模型——在struts框架中,模型分为两个部分:系统的内部状态,可以改变状态的操作(事务逻辑)。

内部状态通常由一组Form Bean表示。根据设计或应用程序复杂度的不同,这些Bean可以是自包含的并具有持续的状态,或只在需要时才获得数据(从某个数据库)。

大型应用程序通常在方法内部封装事务逻辑(操作),这些方法可以被拥有状态信息的bean调用。比如购物车bean,它拥有用户购买商品的信息,可能还有checkOut()方法用来检查用户的信用卡,并向仓库发定货信息。小型程序中,操作可能会被内嵌在Action类,它是Struts框架中控制器角色的一部分。当逻辑简单时这个方法很适合。

视图——由JSP建立,Struts包含扩展自定义标签库,可以简化创建完全国

6

际化用户界面的过程。

控制器——Struts中,基本的控制器组件是ActionServlet类,实际使用的servlet在配置文件中由一组Action映射(Action Mapping)进行定义。

2.4 Spring框架

Spring是一个开源框架,它由Rod Johnson创建。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。其目的是解决企业应用开发的复杂性。使用基本的JavaBean代替EJB,并提供了更多的企业应用功能。

简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。

轻量——从大小与开销两方面而言Spring都是轻量的。完整的Spring框架可以在一个大小只有1MB多的JAR文件里发布。并且Spring所需的处理开销也是微不足道的。此外,Spring是非侵入式的:典型地,Spring应用中的对象不依赖于Spring的特定类。

控制反转——Spring通过一种称作控制反转(IoC)的技术促进了松耦合。当应用了IoC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。可以认为IoC与JNDI相反——不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它。 面向切面——Spring提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务,例如审计(auditing)和事务(transaction)管理,进行内聚性的开发。应用对象只实现它们应该做的——完成业务逻辑——仅此而已。它们并不负责(甚至是意识)其它的系统级关注点,例如日志或事务支持。 容器——Spring包含并管理应用对象的配置和生命周期,在这个意义上它是一种容器,你可以配置你的每个bean如何被创建——基于一个可配置原型(prototype),你的bean可以创建一个单独的实例或者每次需要时都生成一个新的实例——以及它们是如何相互关联的。然而,Spring不应该被混同于传统的重量级的EJB容器,它们经常是庞大与笨重的,难以使用。

7

框架——Spring可以将简单的组件配置、组合成为复杂的应用。在Spring中,应用对象被声明式地组合,典型地是在一个XML文件里。Spring也提供了很多基础功能(事务管理、持久化框架集成等等),将应用逻辑的开发留给了你。 所有Spring的这些特征使开发者能够编写更干净、更可管理、并且更易于测试的代码。它们也为Spring中的各种模块提供了基础支持。

2.5 Hibernate框架

Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。

Hibernate的核心接口一共有5个,分别为:Session、SessionFactory、Transaction、Query和Configuration。这5个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。下面对这五个核心接口分别加以介绍。

Session接口——Session接口负责执行被持久化对象的CRUD操作(CRUD的任务是完成与数据库的交流,包含了很多常见的SQL语句。)。但需要注意的是Session对象是非线程安全的。同时,Hibernate的session不同于JSP应用中的HttpSession。这里当使用session这个术语时,其实指的是Hibernate中的session,而以后会将HttpSesion对象称为用户session。

SessionFactory接口——SessionFactroy接口负责初始化Hibernate。它充当数据存储源的代理,并负责创建Session对象。这里用到了工厂模式。需要注意的是SessionFactory并不是轻量级的,因为一般情况下,一个项目通常只需要一个SessionFactory就够,当需要操作多个数据库时,可以为每个数据库指定一个SessionFactory。

Configuration接口——Configuration接口负责配置并启动Hibernate,创建SessionFactory对象。在Hibernate的启动的过程中,Configuration类的实例首先定位映射文档位置、读取配置,然后创建SessionFactory对象。 Transaction接口——Transaction接口负责事务相关的操作。它是可选的,

8

开发人员也可以设计编写自己的底层事务处理代码。

Query和Criteria接口——Query和Criteria接口负责执行各种数据库查询。它可以使用HQL语言或SQL语句两种表达方式。

2.6 MySQL的空间扩展

遵从OpenGIS联盟(OGC)的规范,MySQL实现了空间扩展(Spatial Extensions)。OGC是一个由250多家公司、代理机构和大学参与的国际联盟,负责开发公开的概念解决方案,这类解决方案对所有用来管理空间数据的应用都是有用的。OGC的网站是http://www.opengis.org/。

1997年,OpenGIS联盟(OGC)发布了针对SQL的OpenGIS?简单特征规范,在该文档中,提出了扩展SQL RDBMS以支持空间数据的一些概念性方法。该规范可从OpenGIS网站上获得http://www.opengis.org/docs/99-049.pdf。其中包含与本章有关的额外信息。

MySQL实施了OGC建议的具有Geometry类型的SQL环境的一个子集。该术语指的是用一组集合类型扩展的环境。具有几何值的SQL列是作为拥有集合类型的列实施的。该规范描述了SQL几何类型集合,以及作用在这些类型上用于创建和分析几何值的函数。

2.7 本章小结

本章介绍了WebGIS的相关概念,AJAX、Spring框架、Struts框架、Hibernate框架技术,以及MySQL的空间扩展。下一章将在明确有关概念的基础上,对系统设计进行描述。

9

第3章 系统设计

Google Map拼车网是为了解决当前拼车网使用文字描述线路的弊端,通过调用Google Maps API在地图上显示拼车线路以及通过地图上的线路信息进行匹配撮合的WebGIS系统的解决方案。在开发Google Map拼车网前,要根据拼车的需求结合Google Maps地理信息的特点进行系统设计。

3.1 功能分析

如图3.1.1所示,系统功能分为四部分:用户信息,线路发布,线路搜索,线路撮合。

图3.1.1 软件主要功能

1. 用户信息

1)登陆:包括普通方式登陆和OpenID方式登录 2)注册:注册为本站用户

3)查看个人信息:查看用户的个人信息 4)修改个人信息:修改用户的个人信息 5)修改密码:修改用户的密码 2. 发布

1) 线路发布:车主发布行车信息或乘客发布拼车线路。

10

2) 要求发布:车主发布拼车要求。 3. 搜索

1) 点选搜索:通过在地图上点击选择起点和终点搜索出符合条件的线路列表。

2) 框选搜索:通过在地图上进行框状拖选搜索出符合条件的线路列表。 3) 条件搜索:通过在文本表单中输入线路条件和要求,搜索出符合条件的线路列表。

4) 二次搜索:通过在文本表单中输入线路条件和要求,在前一次的搜索基础上搜索出符合条件的线路列表。

4. 撮合

1)拼车邀请:车主对有拼车需求的用户发出线路邀请,车主和乘客设置某线路的活动状态。

2)拼车报名:用户对车主的固定行车线路进行报名,车主和乘客设置某线路的活动状态。

3)消息通知:站内信通知用户拼车报名、拼车邀请以及拼车成功信息。 4)用户评价:拼车结束后拼车用户多方进行评价,评价结果以积分形式记录,积分影响用户等级。

3.2 流程分析

系统流程如图3.3.1所示

11

图3.3.1 系统流程分析

3.3 模块设计

根据功能分析,设计相应的模块。 3.2.1 用户信息模块

3.2.1.1 注册 3.2.1.1.1 介绍

功能说明:游客通过注册来增加自己的权限,并成为会员。

3.2.1.1.2 输入

(1) 用户名:必填,长度范围(4--16),只能含有数字和字母

(2) 密码和密码确认:必填,长度范围(3——20),两次填写必须相同 (3) 性别:必填(下拉框选择) (4) 出生年月:必填(下拉框选择) (5) 所在城市:必填

(6) 电话号码:必填(只含有数字) (7) 邮箱:必填(满足邮箱的格式)

12

3.2.1.1.3 处理

(1) 验证所有项是否都满足Input要求 (2) 不满足要求则给出对应项的提示

(3) 满足要求则将用户填写的信息添加到数据库中 3. 2.1.1.4 输出

3.2.1.2 登陆 3.2.1.2.1介绍

用户登入拼车系统,权限增加 3.2.1.2.2输入 (1) 用户名 (2) 密码 3.2.1.2.3处理

(1) 用户输入用户名和密码

(2) 提交数据,对输入的数据进行合法性检测; (3) 输入数据非法,用户重新填写错误参数;

(4) 通过检测,在数据库中按条件查询,返回个人信息; (5) 当数据库中无记录时,页面提示用户名或者密码错误; 3.2.1.2.4输出

(1) 用户名或者密码错误

(2) 显示用户状态(用户名、出生年月、性别、邮箱、城市、国家、电话、最近的拼车链接和积分) 3.2.1.3

查看个人信息

显示用户的个人信息(密码除外)

3.2.1.3.1 介绍

用户查看当前的个人信息和积分信息 3.2.1.3.2 输入 (1) session里的用户名 3.2.1.3.3 处理

(1) 根据 session对象里的用户名从数据库中查询出给用户的个人信息(用户名、

13

出生年月、性别、邮箱、城市、国家、电话、积分信息) 3.2.1.3.4 Output 输出

(1) 显示用户状态(用户名、出生年月、性别、邮箱、城市、国家、电话、最近的拼车链接和积分) 3.2.1.4

修改个人信息

3.2.1.4.1 介绍

用户修改个人信息中的一项或者多项 3.2.1.4.2 输入 (1) 邮箱 (2) 城市 (3) 国家 (4) 电话 3.2.1.4.3 处理

(1) 用户输入新的个人信息(邮箱、城市、国家、电话) (2) 提交数据,对输入的数据进行合法性检测; (3) 输入数据非法,用户重新填写错误参数; (4) 通过检测,保存到数据库中; (5) 显示更改后的个人信息 3.2.1.4.4 输出 (1) 保存成功 (2) 保存失败

(3) 显示更改后的个人信息 3.2.1.5

修改密码

3.2.1.5.1 介绍

用户修改其对应密码 3.2.1.5.2 输入 (1) 当前密码 (2) 新密码 (3) 重复新密码

14


基于J2EE框架的GoogleMaps拼车网设计与实现毕业论文.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:(完整版)视觉传达专业毕业论文设计

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: