




已阅读5页,还剩38页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
桂林电子科技大学毕业设计(论文)报告用纸 编号: 毕业设计说明书题 目:户外旅游网站-住宿及俱乐部在线支付子系统的设计与实现学 院: 信息与通信学院 专 业: 电子信息工程 学生姓名: 学 号: 指导教师: 职 称: 副教授 题目类型: 理论研究 实验研究 工程设计 工程技术研究 软件开发2014 年 5 月 20 日摘 要人类社会已经进入到信息化的时代,同时,社会对信息的处理和利用也已经深入到社会的各个行业中。其中,旅游业是集吃、住、行、游、购、娱六种要素的一个综合性产业,它的过程复杂且受多种因素制约在旅游业中,包含大量可以挖掘的信息,如何开发并和整合这些复杂的信息,使游客们在很短的时间内获取到自己所需求的信息是亟待解决的问题。本系统使用MyEclipse 9.0、Dreamweaver CS4 和 Photoshop CS5开发工具,采用MySQL5.0作为存储数据的数据库,设计和实现了一个旅游网站系统。网站的整体设计主要包含四大功能模块:浏览模块、用户模块、订单模块和论坛模块,同时还提供了管理员后台操作的功能。该网站主要实现了对桂林县城的概况的介绍、该县城周边的旅游景点以及住宿的宾馆酒店的介绍以及相关的操作处理。同时,网站还提供用户注册、登陆、找回密码和订单预定的功能。关键词:JSP;MySQL;Hibernate;旅游网站AbstractThe human society has entered the information era, at the same time, social processing and use of information also has been deep into all sectors of society. Among them, the tourism industry is a comprehensive industry eat, live, row, swim, buy, entertainment, six elements, the process is complex and is affected by many factors in the tourism industry, contains a large number of mining information, how people develop and integrate these complex information, so that visitors in a a short period of time to get to the demand information is an urgent problem to be solved.The system uses MyEclipse 9, Dreamweaver CS4 and Photoshop CS5 development tool, using MySQL5.0 as the data stored in the database, the design and implementation of a tourism website system. The website overall design mainly includes four function modules: browsing module, user module, order module and forum module, it also provides administrators background operation function. The website mainly realizes the situation of Guilin County, the county seat of the surrounding tourist attractions and accommodation of the Gaestgiveriet Hotel and the related operation treatment. At the same time, the website also provides the user registration, login, password and order of predetermined functions.Keywords: JSP;MySQL;Hibernate;Tourist site目 录1绪论11.1 课题背景、目的和意义11.1.1 课题背景11.1.2 课题目的和意义11.2 国内外研究现状11.2.1 国外的研究现状11.2.2 国内的研究现状12系统技术介绍22.1 JSP22.2 Javascript22.3 Jquery22.4 AJAX22.5 CSS32.6 STRUTS 2.032.7 Spring 3.032.8 Hibernate3.042.9 MySQL42.10 Tomcat43 系统可行性分析43.1 社会可行性43.2 操作可行性53.3 技术可行性54 系统需求分析54.1开发环境54.2 系统需求分析64.3 系统功能模块设计74.4 系统数据流图85 系统总体设计95.1数据库分析95.1.1 概念模型设计95.1.2逻辑模型设计115.2 前台功能模块设计145.3 后台功能模块设计166 系统实现186.1 数据库连接的实现186.2前台功能的实现196.2.1 网站首页196.2.2 县城介绍196.2.3 户外动态206.2.4 酒店介绍206.2.5 旅游路线206.2.6 路线投票216.2.7 论坛模块226.2.8用户注册模块实现226.2.9用户登录模块实现226.2.10找回密码模块246.2.11用户基本信息模块246.2.12用户订单管理模块256.2.13用户订单支付256.2.14浏览论坛主贴266.2.15发表新帖模块276.3.2 管理员后台296.3.3 浏览版块管理296.3.4 添加版块信息306.3.5 修改版块信息306.3.6删除版块信息316.3.7 论坛管理317 系统测试317.1 测试方案327.1.1黑盒测试327.1.2 白盒测试327.2功能测试327.2.1用户注册测试327.2.2用户登陆测试327.2.3会员后台管理327.2.4修改密码测试327.2.5浏览版块测试337.2.6订单测试337.2.7论坛功能测试337.2.8 管理员登陆测试337.2.10 论坛板块管理测试337.3测试总结33总结35谢 辞36参考文献37 桂林电子科技大学毕业设计(论文)报告用纸 第38页 共37页1绪论1.1 课题背景、目的和意义1.1.1 课题背景随着国家和社会经济的快速发展,人们的生活质量水准得到了大大的提升。而旅游成为人们乐于追求的精神享受方式之一。出游之前,人们都应该准备好游玩的目的地,住宿,就餐等必备的信息材料。这时,旅游网站成为解决这些繁琐事务的最佳手段。在旅游网站上,人们可以通过关键字查阅自己所向往的旅游胜地的相关信息,快速而简便的预定酒店宾馆。网站还提供游客对旅游经历的分享,通过评论和判断,选择合适自己的旅游地,减少后知后觉的麻烦和经历,度过愉快的旅游假期。因此,设计一个好的旅游网站成为满足人们日益增长的物质需求不可推卸的必要任务。1.1.2 课题目的和意义在各行各业竞争日益激烈的今天,提高工作效率和工作质量是每个企业必须面临并且必须解决的重大课题。旅游在线系统,使得游客们在旅行前只需在自家的电脑前输入查询条件,或通过类别查询,系统就会快速而准确的找到用户们所需的信息,这大大的提高了用户们对旅游点的了解。用户除了可以在旅游在线系统中查询和预定自己向往的旅游胜地,还可以在系统中查询和预定旅游地周边的旅馆,这大大的节省了用户亲自在旅游地时找住宿的时间。同时,旅游在线系统在开拓全球市场时能够大大提高效率,对推动旅游的发展有着一定的实际意义。1.2 国内外研究现状1.2.1 国外的研究现状旅游在线系统如今已是人们获取旅游信息的不可或缺的工具。自从国际互联网的开通以来,为信息社会的飞速发展创造了条件。在美、日等信息化程度较高的国家和地区,旅游在线系统发展的速度非常迅猛。据InternetWorldStatS的统计,今天的互联网已有17亿用户。而目前的全球人口为60亿左右,到2020年毫无疑问会有更多的人使用互联网。美国国家科学基金会预计,到那时互联网的用户数量将接近50亿。网民队伍的迅速扩充,无疑为旅游的发展提供了巨大的市场空间。因此,旅游在线系统成为各国发展旅游业的首选目标。1.2.2 国内的研究现状近十几年来,随着计算机网络技术的飞速发展,网络技术应用已经相当普及,使得在线预定成为现实,各种各样的旅游在线系统层出不穷,国内各省各城市都在创建属于自己的旅游在线系统。随着计算机学科领域技术的飞速发展,普通百姓可以使用Internet这个往日只有极少数科学家能够接触和使用的科技工具,Internet已经成为大众型媒体传播工具。2系统技术介绍2.1 JSPJSP它是一种动态脚本技术,其本质就是servlet。与HTML的区别在于在jsp中,我们可以写入 java代码,因此jsp是Java的扩张。由于jsp的本质是servlet,因此它依赖于web容器运行。当web容器接收到.jsp为扩展名的URL的访问请求时,jsp被编译成servlet,最后把编译出的数据以HTML文本的形式传送到客户端。2.2 JavascriptJavaScript是一款客户端脚本语言,它是基于事件驱动和对象的,并具有相对安全性。同时它也是非常流行的客户端脚本语言,它常用来给HTML或者jsp页面添加动态功能,比如响应用户的各种操作。它最初由网景公司(Netscape)的Brendan Eich设计,是一种动态、弱类型、基于原型的语言,内置支持类。在语法上,Javascript语言和Java语言有较为相似之处,但是随着我们对Javascript的深入了解后,我们会发现它们说到底还是两种不同的设计语言。2.3 JqueryjQuery由美国人John Resig创建,至今已吸引了来自世界各地的众多 javascript高手加入其team。jQuery是继prototype之后又一个优秀的Javascript框架。其宗旨是WRITE LESS,DO MORE,写更少的代码,做更多的事情。它是轻量级的js库(压缩后只有21k) ,这是其它的js库所不及的,它兼容CSS3,还兼容各种浏览器 (IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+)。jQuery是一个快速的,简洁的javaScript库,使用户能更方便地处理HTML documents、events、实现动画效果,并且方便地为网站提供AJAX交互。2.4 AJAX AJAX:(Asynchronous JavaScript and XML)并不是一项新技术,其实是多种技术的综合,包括Javascript、XHTML和CSS、DOM、XML和XMLHttpRequest。AJAX采用异步交互过程。AJAX在用户与服务器之间引入一个中间媒介,从而消除了网络交互过程中的处理等待处理等待缺点。用户的浏览器在执行任务时即装载了AJAX引擎。AJAX引擎用JavaScript语言编写,通常藏在一个隐藏的框架中。它负责编译用户界面及与服务器之间的交互。AJAX引擎允许用户与应用软件之间的交互过程异步进行,独立于用户与网络服务器间的交流。现在,可以用Javascript调用AJAX引擎来代替产生一个HTTP的用户动作,内存中的数据编辑、页面导航、数据校验这些不需要重新载入整个页面的需求可以交给AJAX来执行。 2.5 CSSCSS其实是一组格式的设置规则,它可以用来控制和管理网站页面的外观。我们通过运用CSS的样式来设置页面的格式,这样可以将网站页面的内容和其表现的形式分离开来,这不但可使维护站点的外观更加美观,且还可以让HTML文本的代码更简练,缩短了浏览器的加载时间。2.6 Struts 2.0Struts 2其实是Struts的下一代产品,它是在 struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架。其全新的Struts 2的体系结构与Struts 1的体系结构差别巨大。Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计的好处就是使得业务逻辑的控制器能够与ServletAPI全部脱离开来,所以我们可以把Struts 2理解成WebWork的更新产品。虽然从Struts 1到Struts 2的发展有着太大的变化,但是相对于WebWork,Struts 2的变化很小。Struts2是一个MVC框架(Framework),它用于快速开发Java Web应用。Struts2实现的重点在C(Controller),运用它可以很好的控制和调用业务逻辑层的代码并获取数据传输到前端页面中显示。2.7 Spring 3.0Spring是一款开源框架,Spring 是在2003 年左右兴起的一款轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来。Spring主要是为了解决企业级应用开发的复杂性而创建出来的。以前,只可以用EJB来实现的事情和任务,现在我们使用Spring的JavaBean就能够完成。然而,Spring的用途远远不止如此,它限于服务器端的开发。程序从可测试性,简单性和其松耦合的方面来说,任何的一个Java应用都能够从Spring中受益。Spring就好比一个轻型容器,而它的核心就是Bean工厂,主要用以构造MVC中所需要的M(Model)。在这个基础上,Spring还提供了AOP ,也就是面向层面的编程的实现,使用AOP的好处就是,它提供了一个在非管制的环境下,我们可以以申明的方式添加事务或安全等应用服务。使用Spring可以使我们程序员更加很好的方便的管理和开发JAVAEE。2.8 Hibernate3.0Hibernate 其实是一个对象关系映射,且是一款开源的框架。因为Hibernate对 JDBC 进行了轻量级的对象封装,所以, Javaweb 程序员们可以轻松自在的使用面向对象编程思维来操纵数据库的数据。它不仅提供了从 Java 类到数据表之间的映射,也提供了数据查询和恢复机制。2.9 MySQLMySQL是一款小型关系型数据库管理系统。目前,MySQL已经被广泛地应用在Internet中的中小型网站中。因为它的体积小,运行速度快,总体拥有成本低,最重要的是它是开源代码,所以许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。2.10 TomcatTomcat在严格意义上并不是一个真正的应用服务器,它只是一个可以支持运行Serlvet/JSP的Web容器,不过Tomcat也扩展了一些应用服务器的功能,如JNDI,数据库连接池,用户事务处理等等。Tomcat是Apache组织下Jakarta项目下的一个子项目,目前Tomcat被非常广泛的应用在中小规模的JavaWeb应用中。Tomcat是一种具有JSP环境的Servlet容器。Servlet容器是代替用户管理和调用Servlet的运行时外壳。作为一个开放源代码的软件,Jakarta-Tomcat有着自己独特的优势:首先,它容易得到。事实上,任何人都可以从互联网上自由地下载这个软件。无论从http:/jakarta.A还是从其他网站(JakartaTomcat是Apache软件基金会开发的一个开放源码的应用服务器)。其次,对于开发人员,特别是Java开发人员,Tomcat提供了全部的源代码,包括Servlet引擎、JSP引擎、HTTP服务器。无论是对哪一方面感兴趣的程序员,都可以从这些由世界顶尖的程序员书写的代码中获得收益。最后,由于源代码的开放及世界上许多程序员的卓有成效的工作,Tomcat已经可以和大部分的主流服务器一起工作,而且是以相当高的效率一起工作。如:以模块的形式被载入Apache,以ISAPI形式被载入IIS或PWS,以NSAPI的形式被载入NetscapeEnterpriseServer。由于Java的跨平台特性,基于Java的Tomcat也具有跨平台性。3 系统可行性分析3.1 社会可行性桂林有着被国务院确定的国家重点风景游览城市和历史文化名城两顶桂冠,被誉为国际旅游明珠。我们都知道桂林有着“山水甲天下”之美誉,它是中国与国外都向往的旅游胜地。桂林的风景优美秀丽,主要是以漓江风光和喀斯特地貌为代表的山水景观,有水秀、山青、洞奇、石美“四绝”之誉,它是中国自然风光的经典品牌和典型代表。“千峰环野立,一水抱城流”,景在城中,城在景中,是桂林这座城市所独具魅力的特色。桂林是一个以旅游业为主导产业现代化城市,因此,它必将迎来一次新的飞跃,以更加开放的姿态面向世界,在旅游业上充分利用其具有的得天独厚的资源优势,从而吸引来自世界各地的广大游客。通过建设旅游网站来对外宣传和推广业务无疑是首选的经营策略。随着计算机技术的迅猛发展和网络用户人口的增加,网络世界也越来越广阔,且越来越丰富,网上预定旅游景点已经成为网上的一股潮流。相信要不了太长有时间,用户就可以在网络世界上获得他们所想要获知的世界各地的旅游景点。桂林旅游在线系统主要目的是为了解决用户查询旅游景点和住宿问题的存在的,并且严格按照国家法律法规来进行研究和实践,并无法律和政策方面的限制。3.2 操作可行性目前,大多数计算机都能安装web容器来运行该系统,该系统的安装、发布、调试以及运行都不会改变原计算机系统的设置和布局,且系统的界面简单,拥有较为完整提示信息,操作者可以根据提示对系统进行相应的操作。3.3 技术可行性本网站采用JSP+Struts2.0+Spring3.0+hibernate3.0+MySQL的组合技术,以DIV+CSS前端技术对页面进行规划和布局,以JavaScript/JQuery作为客户端脚本语言对表单进行表单校验,以struts2.0为MVC模式中的控制器调用业户逻辑传递数据到jsp页面,以spring3.0为应用程序中的管理者对分层的组件进行管理,采用hibernate面向对象的方式与后台数据库进行连接,完成数据的添加、修改、删除、查询等功能。因为JSP、Struts拥有强大的功能,而MySQL的灵活易维护在开发方面具有方便快捷、使用灵活的特点,以及目前的广泛实际应用,所以选用JSP、Struts2、MySQL是开发轻平台的最佳组合,从而说明本系统在技术方面可行。4 系统需求分析4.1开发环境1 操作系统:Windows 7;2 服务器版本:Tomcat 6.0;3 JDK版本:JDK 1.6;4 数据库版本:MySQL 5.1;5 项目开发工具:MyEclipse 9.0;6 网页编辑工具:Dreamweaver CS4;7 图片处理工具:Photoshop CS54.2 系统需求分析户外旅游网站主要包括会员注册、订单管理、论坛交流、支付等基本功能。此外,本系统还实现后台管理功能,管理员登陆后台界面可以对网站各个模块进行添加、修改和删除的操作,以及对订单的处理等功能。本系统基于JSP技术,在系统的设计与开发过程中,严格地遵守了软件工程的规范,运用软件的设计模式,从而减少系统程序中各个模块之间的偶合,尽量做到系统的稳定性、可重用性和可扩充性。根据分析本系统的业务需求,把系统功能按照前台和后台分开处理,其具体功能如下:前台(普通用户)部分:(1)用户模块:(a)用户注册模块:用户通过填写用户名、密码、性别、真实姓名、出生日期、手机联系方式、电子邮件进行注册。(b)用户登录模块:判断用户名和密码是否正确,如果正确则跳转到会员管理页面,否则不跳转。(c)基本信息:显示用户注册是填写的基本信息,且用户可修改个别信息。 (d)订单管理:显示用户的订单信息。(2)浏览功能模块:(a)城镇介绍:介绍城镇的基本情况。(b)动态新闻:用户在前台可以浏览和阅读管理员在后台发布的新闻。(c)公告信息:用户可以浏览浏览网站最后的公告信息。(d)酒店介绍:在此模块中,游客和用户可以浏览相关酒店的信息,包括酒店名、地址、房间类型、收费情况等信息,可以下订单。(e)景点介绍:在此模块中,游客和用户可以浏览有关景点的信息,包括景点名、景点介绍、景点价格等信息,可以下订单。(f)景点票选:用户可以在此模块中对网站列出的旅游景点进行投票和排名。(g)热门景点推荐:网站此列出由用户通过投票排名前5名的热点旅游景点。(3)论坛模块(a)浏览模块:用户可以浏览所有主贴和回复帖。(b)发帖模块:通过注册成为本站的会员,即可发新帖。(c)回帖模块:通过注册成为本站的会员,即可回复主贴。后台(管理员管理)部分:(1)浏览版块管理:发布、修改、删除各个模块信息;(2)论坛管理:发布、查看主题 和回复主题;(3)订单管理:查看订单详细信息,及时对用户做出相应的安排。4.3 系统功能模块设计根据系统的功能分析,画出系统的功能模块图如下:前台的功能图如图所示:图4-1 前台功能模块图后台的管理员功能图如图所示:图4-2 后台功能管理图4.4 系统数据流图通过对整个系统的数据分析绘制出系统的数据流图如下:前台的数据流图如图所示:图4-3 前台数据流图后台的数据流图如图所示:图4-4 后台数据流图前后台订单处理数据流图如图所示:图4-5 订单处理数据流图5 系统总体设计5.1数据库分析5.1.1 概念模型设计概念模型是用于信息世界的建模工具,它与具体的DBMS并没有关联。为了可以把现实世界中的具体事物抽象化、组织为某一DBMS支持的数据模型。我们通常会先将现实世界抽象成信息世界,再将信息世界转换为机器世界。换句话说,首先把现实世界中的某一客观存在的对象抽象为某一种信息结构,而这种信息结构并不是依赖于具体的计算机系统和具体的DBMS,而是概念层次的模型,然后再把这个模型转换为计算机上某一个DBMS支持的数据模型。实际上,概念模型就是现实世界转向到机器世界的一个中间层次。 数据库的概念模型根据系统需求而分析,以及网站工作过程的内容和数据流程的分析,设计以下数据项和数据结构。(1)用户信息:用户ID、用户名、用户密码、用户性别、用户出生年月日、用户真实姓名、用户手机联系方式、用户电子邮箱、用户注册日期。(2)角色:角色ID、角色名称。(3)用户_角色中间表:用户ID、角色ID。(4)权限:权限ID、权限名称、权限超链接、权限图标、权限外键。(5)角色_权限中间表:角色ID、权限ID。(6)城镇信息:城镇ID、城镇名称、城镇介绍信息、城镇图片名、城镇图片绝对路径、发布作者、发布时间、修改时间。(7)新闻动态:新闻ID、新闻标题、新闻内容、发布作者、发布时间、修改时间。(8)通告信息:通告ID、通告标题、通告内容、发布时间、修改时间。 (9)酒店信息:酒店ID、酒店名称、酒店地址、酒店内容介绍、酒店服务、酒店酒店网络服务、开业时间、酒店价格、酒店联系方式、酒店图片名、酒店图片绝对路径、发布时间、修改时间。(10)酒店订单:订单ID、订单号、订单状态、订单下达时间、酒店ID、用户ID、入住时间、退房时间、房间类型。(11)旅游景点:景点ID、景点名称、景点地址、景点内容介绍、景点价格、景点联系方式、景点联系人、景点开团时间、景点图片名、景点图片绝对路径、发布时间、修改时间、景点好票数、景点坏票数、景点总票数。(12)旅游景点订单:订单ID、订单号、订单状态、订单下达时间、景点ID、用户ID、参与人数、总价。(13)论坛主题:主题ID、主题作者、主题标题、主题内容、发布时间、最后回复人ID、最后回复时间、回复总数。(14)论坛回复:回复ID、回复作者、回复主题、回复内容、回复时间、回复主题ID。(15)临时用户:临时用户ID、用户名、用户电子邮箱、找回密码时间、找回密码链接。每个实体之间的关系,具体对应的E-R图如下:图5-1 各个实体的E-R图用户、角色和权限的E-R图如下所示:图5-2 用户、角色和权限的E-R图5.1.2逻辑模型设计根据上面的数据库得概念模型设计来创建数据库以及数据库表,本网站的数据库名为mytour,该数据库中各个数据库表的设计结果如下面的表格所示。表5-1 用户信息表user字段名称数据类型说明备注idint(11)用户ID主键,自动增长birthdayvarchar(255)用户出生年月日允许为空emailvarchar(255)用户电子邮箱允许为空passwordvarchar(255)密码允许为空phonevarchar(255)联系电话允许为空realNamevarchar(255)真实姓名允许为空registerDatedatetime注册日期允许为空sexvarchar(255)性别男/女loginNamevarchar(255)用户名允许为空表5-2 角色表role字段名称数据类型说明备注idbigint(20)角色ID主键,自动增长namevarchar(255)角色名称允许为空表5-3 用户角色中间表user_role字段名称数据类型说明备注userIdbigint(20)用户ID非空roleIdbigint(20)角色ID非空表5-4 权限表privilege字段名称数据类型说明备注idbigint(20)权限ID主键,自动增长namevarchar(255)权限名称允许为空urlvarchar(255)权限超链接允许为空iconvarchar(255)权限图标允许为空parentIdbigint(20)权限外键允许为空表5-5 角色权限中间表role_privilege字段名称数据类型说明备注privilegeIdbigint(20)权限ID允许为空roleIdbigint(20)角色ID允许为空表5-6 城镇信息表town字段名称数据类型说明备注idint(11)城镇ID主键,自动增长authorvarchar(255)发布作者允许为空contentmediumtext城镇信息介绍允许为空filenamevarchar(255)城镇图片名允许为空filePathvarchar(255)城镇图片路径允许为空releaseTimedatetime发布时间允许为空titlevarchar(255)城镇名称允许为空updateTimedatetime修改时间允许为空表5-7 新闻动态表news字段名称数据类型说明备注idInt(11)新闻ID主键,自动增长authorvarchar(255)发布作者允许为空contentmediumtext新闻内容允许为空releaseTimedatetime发布时间允许为空titlevarchar(255)新闻标题允许为空updateTimedatetime修改时间允许为空表5-8通告信息表notice字段名称数据类型说明备注idInt(11)通告ID主键,自动增长contentmediumtext通告内容允许为空releaseTimedatetime发布时间允许为空titlevarchar(255)通告标题允许为空updateTimedatetime修改时间允许为空表5-9 酒店信息表hotel字段名称数据类型说明备注idint(11)酒店ID主键,自动增长addressvarchar(255)酒店地址允许为空contentmediumtext酒店内容介绍允许为空hotelNamevarchar(255)酒店名称允许为空hotelServicevarchar(255)酒店服务允许为空fileNamevarchar(255)酒店图片名允许为空filePathvarchar(255)酒店图片路径允许为空netServicevarchar(255)酒店网络服务允许为空openTimevarchar(255)开业时间允许为空pricevarchar(255)酒店价格允许为空phonevarchar(255)酒店联系方式允许为空releaseTimedatetime发布时间允许为空updateTimedatetime修改时间允许为空表5-10 酒店订单表hotelOrder 字段名称数据类型说明备注idint(11)酒店订单ID主键,自动增长ordereIdvarchar(255)订单号允许为空orderStatusvarchar(255)订单状态允许为空orderTimedatetime订单下达时间允许为空hotelIdint(11)酒店ID外键userIdint(11)用户ID外键inDatedate入住时间允许为空outDatedate退房时间允许为空roomvarchar(10)房间类型单人间/双人间表5-11 旅游景点表tourway字段名称数据类型说明备注idint(11)景点ID主键,自动增长addressvarchar(255)景点地址允许为空badCountint(11)坏票数允许为空contactvarchar(255)景点联系人允许为空contentmediumtext内容介绍允许为空countint(11)总票数允许为空goTimevarchar(255)景点开团时间允许为空goodCountint(11)好票数允许为空fileNamevarchar(255)景点图片名允许为空filePathvarchar(255)景点图片路径允许为空phonevarchar(255)联系方式允许为空pricedouble景点价格允许为空releaseTimedatetime分发布时间允许为空tourwayNamevarchar(255)景点名称允许为空updateTimedatetime修改时间允许为空表5-12 旅游订单表 tourwayOrder字段名称数据类型说明备注idint(11)旅游订单ID主键,自动增长ordereIdvarchar(255)订单号允许为空orderStatusvarchar(255)订单状态允许为空orderTimedatetime订单下达时间允许为空tourwayIdint(11)景点ID允许为空userIdint(11)用户ID允许为空amountint(11)参与人数允许为空totalPriceint(11)总价格允许为空表5-13 论坛主题表topic字段名称数据类型说明备注idint(11)主题ID主键,自动增长authorIdint(11)主题作者允许为空contentmediumtext主题内容允许为空lastUpdateTimedatetime最后回复时间允许为空releasetTimedatetime发布时间允许为空replyCountint(11)回复总数允许为空titlevarchar(255)主题标题允许为空laseReplyIdint(11)最后回复者ID外键表5-14 论坛回复表reply字段名称数据类型说明备注idint(11)回复ID主键,自动增长authorIdint(11)回复作者允许为空contentmediumtext回复内容允许为空releaseTimedatetime回复时间允许为空titlevarchar(255)回复主题允许为空topicIdint(11)回复主题ID外键表5-15 临时用户表umessage字段名称数据类型说明备注idint(11)临时用户ID主键,自动增长emailvarchar(255)用户电子邮件允许为空findTimevarchar(255)找回密码时间允许为空urlvarchar(255)找回密码链接允许为空loginNamevarchar(255)找回密码用户名允许为空5.2 前台功能模块设计(1) 用户注册模块:用户在注册页面输入注册信息,如果用户名在数据库中已有纪录,则页面不提交数据。注册流程图如图所示:图5-3 用户注册流程图表单校验中,用户名是否被注册过采用JQuery的ajax()来完成对服务器的访问,其他的表单验证采用JQuery-validation插件在客户端进行校验。(2) 用户登录模块:用户会员输入账号、密码,系统判断用户输入的信息与后台数据库中用户表的记录是否匹配,若不匹配,则刷新页面,等待用户重新输入。用户登陆流程图如图所示:图5-4 用户登陆流程图用户登录成功后,会来到会员管理界面。这时在首页会显示当前用户的名称,以及“基本信息设置”、“我的订单”、“信息查看”、“退出”链接。也就是说,这几个功能只能登录用户才能使用,而游客是无法使用的。(3) 浏览功能模块:只要登陆本系统网站的首页就可以浏览网页前台的所有数据信息。(4) 找回密码模块:用户会员输入账号和注册时的电子邮箱,系统判断用户输入的信息与后台数据库中用户表的记录是否匹配,若不匹配,则刷新页面,等待用户重新输入。图5-5 找回密码流程图(5) 论坛模块:用户要发新帖或则回复主贴内容,则系统先判断用户时候已经会员登陆。如果用户没有会员登录,则页面不跳转。论坛回复流程图如图所示:图5-6 论坛回复流程图(6) 订单模块:用户登陆会员可以浏览“酒店宾馆”或“旅游景点”版块对其内容进行预定操作。订单处理流程图如图所示:图5-7 订单预定流程图5.3 后台功能模块设计后台功能主要针对管理员而设计的。管理员成功登陆后台管理界面后,可以对前台的管理模块进行增删改查的操作,其具体的流程图如下:图5-8 管理员管理流程图当以管理员的身份进入后台管理界面后,点击后台的各个菜单下的超链接就可以查看其相应的列表内容。在列表的界面有”删除”的超链接操作,点击“删除”就可以删除该记录。当执行”添加”操作时,其流程图如下图所示:图5-9 添加流程图在列表的界面有”修改”的超链接操作,点击“修改”,页面就会跳转到修改页面,使管理员可以对其进行修改,其流程图与添加流程图相似。当管理员在后台执行添加、修改或者删除的操作后,在网站前台我们也可以看到页面数据有相应的变动。6 系统实现6.1 数据库连接的实现Hibernate框架中定义名为hibernate.cfg.xml的配置文件,该配置文件主要功能是设置tomcat服务器与mysql的连接所需要的数据。不过,此项目采用SSH三大框架进行开发,其中Spring框架作为Bean的管理者,因此,可以取代Hiberate进行对连接数据库的初始化工作。本系统定义spring配置文件名为ApplicationContext.xml。部分配置如下:在Spring的applicationContext.xml中也引用了一个名为perties的配置文件。jdbcUrl = jdbc:mysql:/mytourdriverClass = com.mysql.jdbc.Driverusername = rootpassword =tiger6.2前台功能的实现6.2.1 网站首页网站首页主要显示动态图片、网站导航、新闻动态、站内公告和热点旅游景点等信息内容。网站首页的布局采用的是DIV+CSS技术设计的。其中碗盏导航以及其上部分的内容都属于公共的代码,为了提高代码的重用性,在编写代码方面,将这些公共的代码写入common.jspf中,再用将其引入到页面中。网站首页总的来说有4个DIV构成,分别对应图片资讯模块、新闻动态模块、站内公告模块、热点路线模块。图6-1 网站首页效果6.2.2 县城介绍图6-2为县城介绍的预览图,我们可以通过点击网站首页中导航的县城介绍,打开新窗口显示县城的介绍内容。该网站以桂林市阳朔县为出发点,以其周边旅游地作为本网站介绍的景点。图6-2 县城浏览图6.2.3 户外动态图6-3为户外动态界面的预览图。界面的内容对应首页中的新闻动态模块的内容。该界面列出了该网站中所有的动态信息标题列表。用户可以通过点击列表中的任一选项,浏览器会弹出新的窗口页面来显示对应标题的内容。图6-3 户外动态效果图6.2.4 酒店介绍图6-4为酒店介绍界面的预览图。在该界面,用户可以根据页面列出的酒店标题列表,根据自己的需求查看各个酒店的详细内容。同时,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论