基于SpringMVC+Hibernate旅游网站系统的设计与实现_第1页
基于SpringMVC+Hibernate旅游网站系统的设计与实现_第2页
基于SpringMVC+Hibernate旅游网站系统的设计与实现_第3页
基于SpringMVC+Hibernate旅游网站系统的设计与实现_第4页
基于SpringMVC+Hibernate旅游网站系统的设计与实现_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

旅游网站系统的设计与实现分类号 论文编号 本 科 生 毕 业 设 计 旅游网站姓 名: 院 系: 年级专业: 指导教师: 2018年5月目录第一章 绪论11.1引言11.2背景11.3旅游网站系统现状问题分析21.4旅游网站开发的意义和目的2第二章 相关技术介绍52.1系统开发使用技术介绍52.1.1JAVA概况介绍52.1.2MySQL概况介绍52.1.3Tomcat概况介绍62.1.4Spring MVC概况介绍62.1.5CSS概况介绍7第三章 系统分析83.1系统开发的软件环境可行性分析83.2系统开发的硬件环境可行性分析83.3系统开发的构架设计可行性分析83.3.1B/S构架与C/S构架介绍83.3.2C/S构架的选择与分析93.4系统开发需求分析93.4.1旅游网站系统流程分析93.4.2系统功能需求分析10第四章 系统设计124.1数据库的设计124.2建立数据库134.3系统功能设计154.3.1登录设计154.3.2管理员功能设计164.3.3游客功能设计17第五章 系统的实现185.1登录功能的实现185.2景点管理195.3美食管理功能225.4景点浏览管理功能255.5景点搜索功能275.6游客登录和注册305.7景点评论功能31第六章 展望与未来34总结35参考文献36致谢37摘要旅游电子商务网站要实现收益递增,必须充分利用网络来进行技术创新。通过对我国旅行电子商务网站市场前景、产品策略和盈利模式等多个方面进行分析,并结合其所面临的制约因素探讨了我国旅行电子商务网站未来发展的对策。改革开放以来,我国的旅游业发展迅速,目前我国正处于旅游大国向旅游强国迈进的转型期,国际旅游和国内旅游的竞争异常激烈,旅游产品的不可储存性和不可转移性,以及旅游目的地之间的可替代性等特性,都决定了旅游业的竞争是品牌的竞争,是信息传播手段、方法和效果的竞争,谁能够了解更多的旅游者的信息,能够针对旅游者进行有效的旅游信息传播、控制,那么谁就会有更大的主动性。伴随着我国旅游业的发展,我国的旅游传媒发展至今已经具备了一定的规模,涌现出一批深受旅游者喜爱的旅游图书、旅游电视节目和旅游网站, 本系统采用B/S架构实现,其中服务端程序采用Java语言开发,基于Spring MVC+Hibernate框架实现,从而运用了MVC架构,将业务逻辑和视图全面分离,提高了代码的重用性,减少了冗余代码的出现。因其本身将视图逻辑分离,互不影响,解决了以往JSP WEB程序里JSP脚本和HTML标签混合存在使页面结构杂乱不易维护的问题,同时也为系统修改和扩展提供了良好的条件。系统Java代码采用面向对象思想设计,业务逻辑按照系统功能模块分离,独立存在,杜绝不通业务之间代码影响。MySQL作为本系统的数据库,成为本系统不二之选。在程序中,基本的数据库操作用原生SQL脚本自己编写,从而提高了数据库操作的灵活性和便利性,同时也提高了数据库查询效率,而其他设计多表联查、数据类型处理等操作也采用自己编写SQL脚本来实现。WEB服务器部分同样采用最常见的Tomcat 8.5搭建,在项目开发中采用JDK8。系统客户端页面基于Bootstrap和JQuery以及HTML5整合实现,可以很好的适应各种屏幕、分辨率的设备,从而实现的响应式的页面设计。关键词:旅游 B/S架构 Tomcat MySQL Bootstrap JqueryAbstractTo achieve increasing returns, tourism e-business websites must make full use of the network to carry out technological innovation. Through the analysis of the market prospect, product strategy and profit model of Chinas travel electronic commerce website, the Countermeasures of the future development of Chinas travel electronic commerce website are discussed in combination with the constraints faced by it.Since the reform and opening up, Chinas tourism industry has developed rapidly. At present, China is in a period of transition from a large tourist country to a powerful tourist power. The competition of international tourism and domestic tourism is extremely fierce, the non storage and non transferability of tourism products, as well as the substitutability of tourist destinations, have all decided tourism. The competition of the industry is the competition of the brand. It is the competition of the means, methods and effects of information dissemination. Who can understand more tourists information, and can carry out effective travel information and control for the tourists, then who will have greater initiative. With the development of Chinas tourism industry, the development of Chinas tourism media has already had a certain scale, and a number of tourist books, TV programs and tourist websites have emerged, which are popular among tourists.This system is implemented with B/S architecture, in which the server program is developed in Java language and based on the Spring MVC+Hibernate framework. Thus, the MVC architecture is used to separate the business logic and view, which improves the reusability of the code and reduces the appearance of redundant code. Because it separates the logic of view itself and does not affect each other, it solves the problem that the JSP script and the HTML label in the previous JSP WEB program make the page structure disorderly and difficult to maintain, and also provide good conditions for the system modification and extension. The Java code of the system is designed by object-oriented thinking. The business logic is separated from the functional modules of the system and exists independently, so as to eliminate the influence of code between businesses. As the database of the system, MySQL becomes the best choice of the system. In the program, the basic database exercises the original SQL script to write its own, which improves the flexibility and convenience of the database operation. At the same time, it also improves the efficiency of database query, while other operations such as multi table connection and data type processing have also been implemented by writing SQL feet. The WEB server part is also built with the most common Tomcat 8.5, and JDK8 is used in project development. System client page based on Bootstrap and JQuery and HTML5 integration implementation, can be well adapted to various screen, resolution equipment, so as to achieve the response type of page design.Keywords:Tourism B/S structs Tomcat MySQL Bootstrap Jquery旅游网站系统的设计与实现第一章 绪论1.1引言我国是一个拥有悠久历史文化和丰富旅游资源的国家,现已成为亚洲旅游大国,今后20年,中国还将成为世界旅游强国。2004年全国接待入境旅游人数达1.08亿人次,分别比2003年和2002年增长18%和10%。入境过夜旅游人数达4 100万人次,分别比2003年和2002年增长24%和11%,有望超过意大利跃居世界第4位。旅游外汇收入达255亿美元,有望超过德国和英国,跃居世界第5位。世界旅游组织预测到2020年我国将成为世界上最大的旅游目的地和第四大旅游客源国,每年接待的入境旅游者将达到1.37亿之多,每年出境、出国旅游者也将有1亿。我国国内的旅游市场潜力同样不容小觑,虽然现在国内旅游收入在国民生产总值中占的比重还很小,但是随着我国经济的快速增长,国民的旅游意识正不断被激发起来,2004年数据表明,全国国内旅游人数达9.3亿人次,国内旅游收入超过4 000亿元,分别比2002年增长5.9%和3.1%。2020年后我国的旅游业将步入发展的黄金时段,届时电子商务和网络产业也将趋于成熟,2004年底我国网民数量已逾9 000万,网上消费市场商机无限。在这种背景下,旅游、电子商务、互联网络的迅速融合将不可避免,并创造出难以估量的价值,网络旅游将推动IT领域内互联网电子商务的迅速发展,也将为旅游业界带来新的生机。1.2背景我国很多旅游电子商务网站原来只不过是普通的计算机网络公司或依托计算机网络公司而建,但同旅游行业的结合,赋予了其新的市场前景,成功的实现了向旅游电子商务网站的转型:有与订房中心或旅店合作,提供网上宾馆客房分销的;有与机票、车票代理点合作,提供便捷客运服务支持的;有与各地星级酒店合作,为各类商务差旅活动提供休闲服务的;有与旅行社合作来为客户提供特定的旅游线路、完善的旅游地安排及导游服务的等等。经过一种或多种转型过程的旅游电子商务网站还可实现根据客户自己的喜好设计自助旅游路线,预订票务宾馆等,为满足客户个性化要求,还可提供各种可选的支付方式。1.3旅游网站系统现状问题分析通过技术创新转型之后的旅游电子商务网站在技术这一生产要素上的投入大大提高,使得其具备了成本优势、网络效应和束缚用户的常规效应,所有这些特征导致了收益递增的产生,其本质体现了从一种领先到进一步领先的趋势。如携程网并购国内酒店预订规模最大的北京现代运通公司成为国内最大的酒店预定业务公司,而后者是国内第一家利用800免费电话进行酒店预订的订房公司,很快规模效应开始显现,携程的月订量就猛增到15万人次,一个月仅酒店预订的交易额就有67千万元。1.4旅游网站开发的意义和目的旅游网站的开发意义从以下三方面来体现;1. 前景我国很多旅游电子商务网站原来只不过是普通的计算机网络公司或依托计算机网络公司而建,但同旅游行业的结合,赋予了其新的市场前景,成功的实现了向旅游电子商务网站的转型:有与订房中心或旅店合作,提供网上宾馆客房分销的;有与机票、车票代理点合作,提供便捷客运服务支持的;有与各地星级酒店合作,为各类商务差旅活动提供休闲服务的;有与旅行社合作来为客户提供特定的旅游线路、完善的旅游地安排及导游服务的等等。经过一种或多种转型过程的旅游电子商务网站还可实现根据客户自己的喜好设计自助旅游路线,预订票务宾馆等,为满足客户个性化要求,还可提供各种可选的支付方式。通过技术创新转型之后的旅游电子商务网站在技术这一生产要素上的投入大大提高,使得其具备了成本优势、网络效应和束缚用户的常规效应,所有这些特征导致了收益递增的产生,其本质体现了从一种领先到进一步领先的趋势。如携程网并购国内酒店预订规模最大的北京现代运通公司成为国内最大的酒店预定业务公司,而后者是国内第一家利用800免费电话进行酒店预订的订房公司,很快规模效应开始显现,携程的月订量就猛增到15万人次,一个月仅酒店预订的交易额就有67千万元。2. 策略旅游产品的最大特点在于其无形性和静态性,特别是其在市场经营活动中以信息形态方式表现。因此信息技术的参与对旅游业的影响重大,其中网络信息技术对旅游业的这种信息形态发展注入了新的力量。旅游业和互联网资源经技术创新后融合成的旅游网站,使传统的旅游运作方式得到极大的改善,并创造出了新的产品价值。它充分利用了网络资源的优势,互动、开放、动态、整合各地旅游资源、不受时空限制。同时还利用了电子商务的模式,通过架构在旅游商务网站平台上,使交易操作程序简便,交易环节兼并压缩,交易成本大幅节省,交易的效果也将变得非常显著。我国现在的旅游网站良莠不齐,比较有实力的品牌网站数量不多。大多数旅游网站还仅仅局限于在网上做一些旅游产品的广告宣传介绍或是客房票务预订,商务电子化程度太低,技术创新力度不够,还不能全面涵盖游客日益增长的对吃、住、游、行等各方面的基本需求,更无法为游客提供个性化要求的旅游产品。旅游电子商务网站要扩大自身的影响力,打出自己的品牌必须要兴建起个性化自助服务的商务网站平台及覆盖面广、信息量大、可提供专业便利的全程个性服务,这才是旅游电子商务网站得以长期生存发展的根本所在。以旅游产品销售的主要内容之一酒店客房预订为例,传统的宾馆客房预订中存在的最主要问题是不能实时向客户反映客房的订购状况。旅游电子商务网站的基于B/S的网上订房系统数据库应与其上游宾馆内部的客房管理系统数据库实现向前集成,在不改变宾馆数据库所有权的前提下实现资源共享,以便及时掌握上游客房状态数据,抹平“牛鞭效应”。旅游网站与饭店确认预订的环节实现BPR(业务流程重组),与客户的互动交流实现CRM(客户关系管理)为消费客户提供更具时效、更经济、更富特色的服务。同时旅游网站的访问量也将会因此而大幅提高,使得更多的宾馆愿与其联盟合作,随着后备客房资源变得越来越丰富,消费者的选择余地也就越加广泛,旅游网站的吸引力也就更大,访问量得以不断攀升。这是一种良性循环,旅游商务网站在技术创新的驱动下不断挖掘产品内涵,做强做大,实现收益递增。3.对所学专业水平和实践能力的影响该项目的开发过程涵盖了我的专业所学的大部分所学知识和技能,特别是WEB开发方面。使用Java语言,让我对Java这门世界运用最广泛的开发语言的语法、函数、执行原理有了深刻的认识。使用Spring MVC + Hibernate框架,让我认识到了MVC设计思想在软件开发领域的重要性和便利性,为我开发理清了思路,让代码机构不在混乱。使用MySQL数据库,使我在以前所学SQL脚本的基础上,增强了对多表查询、模糊查询以及MySQL内置函数的理解和使用。学习了Bootstrap框架,让我充分认识到响应式框架在用户体验和自适应方面带来极大便利,也让我学习了如何使用JQuery对DOM节点各种元素进行动态操作。总之,这次毕业设计的制作,让我进一步深入了解WEB开发的整个过程,可以说是对大学所学知识的一次重要的巩固和提高。开发目的;让大学生们深入了解和掌握MVC架构的意义和思想方法,熟练了常见SQL脚本的编写,学会了前端开发技术,使学生的动手开发能力有很大提高,与此同时,还让学生对软件开发过程中,从数据库设计,到代码模块划分,再到前端页面设计和制作有了一次非常系统的学习和锻炼。第二章 相关技术介绍2.1系统开发使用技术介绍2.1.1JAVA概况介绍Java,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的总称。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展。Java是一种简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的,性能优异、多线程的动态语言。当1995年SUN推出Java语言之后,全世界的目光都被这个神奇的语言所吸引。那么Java到底有何神奇之处呢?Java语言其实最早诞生于1991年,起初被称为OAK语言,是SUN公司为一些消费性电子产品而设计的一个通用环境。他们最初的目的只是为了开发一种独立于平台的软件技术,而且在网络出现之前,OAK可以说是默默无闻,甚至差点夭折。但是,网络的出现改变了OAK的命运。在Java出现以前,Internet上的信息内容都是一些乏味死板的HTML文档。这对于那些迷恋于WEB浏览的人们来说简直不可容忍。他们迫切希望能在WEB中看到一些交互式的内容,开发人员也极希望能够在WEB上创建一类无需考虑软硬件平台就可以执行的应用程序,当然这些程序还要有极大的安全保障。对于用户的这种要求,传统的编程语言显得无能为力。SUN的工程师敏锐地察觉到了这一点,从1994年起,他们开始将OAK技术应用于WEB上,并且开发出了HotJava的第一个版本。当SUN公司1995年正式以Java这个名字推出的时候,几乎所有的WEB开发人员都心生感叹:噢,这正是我想要的!于是Java成了一颗耀眼的明星,丑小鸭一下子变成了白天鹅。2.1.2MySQL概况介绍MySQL是由瑞典MySQL AB公司开发,是一个关系型数据库管理系统,目前属于Oracle旗下产品3。MySQL 是现在最流行的关系型数据库管理系统之一,在WEB应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件3。MySQL是一种关系数据库管理系统,关系数据库是将数据保存在不同的表中,而不是将所有的数据都放在一个大仓库内,这样就增加了速度并提高了灵活性。并且MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言3。MySQL软件采用的是双授权政策,分为社区版和商业版,由于其速度快、体积小、总体拥有的成本低,尤其是开放源码这一个特点,使一般中小型网站的开发都会选择MySQL作为网站数据库3。由于其社区版的性能卓越,搭配PHP和Apache可以组成良好的开发环境。2.1.3Tomcat概况介绍Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat是Apache 服务器的扩展,但运行时它是独立运行的,所以当你运行Tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。目前Tomcat最新版本为9.0。2.1.4Spring MVC概况介绍很多应用程序的问题在于处理业务数据和显示业务数据的视图的对象之间存在紧密耦合。通常,更新业务对象的命令都是从视图本身发起的,使视图对任何业务对象更改都有高度敏感性。而且,当多个视图依赖于同一个业务对象时是没有灵活性的。Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱动指的就是使用请求-响应模型,框架的目的就是帮助我们简化开发,Spring Web MVC也是要简化我们日常Web开发的。Spring MVC的优点:1.Spring MVC实现了即用的MVC的核心概念。它为控制器和处理程序提供了大量与此模式相关的功能。并且当向MVC添加反转控制(Inversion of Control,IoC)时,它使应用程序高度解耦,提供了通过简单的配置更改即可动态更改组件的灵活性。Spring MVC为您提供了完全控制应用程序的各个方面的力量。2.Spring的Web MVC模块是围绕DispatcherServlet而设计的。DispatcherServlet给处理程序分派请求,执行视图解析,并且处理语言环境和主题解析,此外还为上传文件提供支持。3.DispatcherServlet通过使用处理程序映射来决定哪一个处理程序应当处理传入的请求。处理程序映射只是用于标识使用哪一个处理程序来处理特定URL模式的映射。处理程序是只有一种方法ModelAndView handleRequest(request,response)的控制器接口的实现。Spring还有一些可用的高级处理程序实现;其中一个重要的高级处理程序实现是SimpleFormController,它提供了将命令对象绑定到表单、对其执行验证等功能。4.您已经在本系列教程的先前教程中使用了DispatcherServlet和简单的处理程序。在下一个部分中,将使用SimpleFormController并说明Spring MVC提供的各种即用功能。2.1.5CSS概况介绍CSS 是Cascading Style Sheet 的缩写,“可翻译成层叠样式表”或者“级联样式表”是一种格式设置规则,用来控制WEB页面的外观。可通过使用CSS样式来设置页面的格式,可以将页面的表现形式和内容分开6。页面内容可以存放在HTML文档中,用于定义表现形式的CSS规则则可以存放在HTML文档的某个部分,通常存放在文档的头部分或存放在另一个文档中6。将表现形式和内容分离,不仅可以使网站维护站点的外观更加的容易,还可以使HTML文档代码清晰简洁,大大缩短了浏览器的加载时间6。第三章 系统分析3.1系统开发的软件环境可行性分析Java是一种跨平台的动态应用开发语言,所以只需要开发一次、同样的代码既可以在Windows系统上运行,也可以在Linux系统中运行,甚至之间的切换不需要修改任何代码。Java运行环境包括MySQL、Tomcat等,这些可以在各自官网下载,安装后自行配置,在Windows系统和Linux系统下都非常方便。与此同时,本系统开发需要常见的IDE环境工具,只需要Eclipse等即可开发,可以说本系统不管是哪种操作系统,只要开发环境完备,都可以快速开发和部署。3.2系统开发的硬件环境可行性分析在目前的计算机硬件水平来看在平时使用状态下处于性能过剩,对于系统的开发也满足要求,但为了开发过程更加快捷,代码执行更快,推荐Intel I3、主屏2.5GHZ及以上的处理器, 8GB的运行内存空间以及 40GB及以上硬盘剩余空间,显示器分辨率在1280*800至1920*1080之间所有设备。3.3系统开发的构架设计可行性分析3.3.1B/S构架与C/S构架介绍Client/Server结构(C/S结构)是我们熟知的客户机和服务器结构,是一种较早的软件结构,目前很多系统软件都是基于这个两层(用户表示层和数据库层)的结构进行开发,用户表示层拥有运算、输入输出、数据存储的业务逻辑事务,降低了服务器的压力;数据库层主要承担事务逻辑的处理,使用此构架需在电脑端安装一个对应的客户端。B/S(Browser/Server)结构,是网络高速发展后兴起的一种结构,也是C/S架构的一种改进,可以说属于三层C/S架构(浏览器层、WEB服务器层和数据库服务器层),浏览器层具有简单的输入输出功能,处理少量的事务逻辑,不需要安装客户端,可直接在带有浏览器且接入互联网的任何终端都可以进行操作;WEB服务器层负责信息的传送,将用户在浏览器层的操作发送给服务器;数据库服务器层负责接收来自WEB服务器层传送来的数据,对其进行处理,将需要用到的数据从庞大的数据中提取,并将结果返回给WEB服务器,再以HTML形式返回给浏览器。所以本系统的B/S结构的选择是十分合理的。3.3.2C/S构架的选择与分析C/S是软件系统体系结构,通过它可以充分利用的两端硬件环境的优势,将所有任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。目前大多数应用软件系统都是Client/Server形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server 应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。3.4系统开发需求分析3.4.1旅游网站系统流程分析本系统日常工作流程主要分五个部分。其一,景点概览,主要是消费者在网站上可以看到景点列表,包括图片和景点名称。其二,景点详情,用户选择任意景点后可看到景点的详情,包括景点名称、缩略图、详情图、门票价格、景点地址、景点特色等等。其三,美食推荐,当用户浏览某景点详情信息时,系统将在页面下方自动推荐本地的特色美食信息,包括美食照片和美食名称。其四、景点搜索,景点搜索主要包括两种方式,即按照名称检索和按照城市名称,例如用户输入“西安市”,则会显示西安市内的所有景点列表。其五,用户登录和注册,该功能面向游客开放,是游客进行景点评论的前提,只有注册为会员的用户才能对景点进行评论。其六,景点评论,用户注册为会员后即可评论任意的景点,评论后即可在景点详情下方看到自己的评论。其七,景点管理,此处是管理员用来新增、查询、编辑以及删除景点信息的地方,与此同时可以上传景点的图片等。其八,美食管理,此处是管理员用来新增、查询、编辑以及删除景点美食信息的地方,与此同时可以上传美食的图片等。以上就是旅游网站系统所需要的流程信息。3.4.2系统功能需求分析本系统所需要实现的功能需求主要有:一、景点管理:景点管理功能是本系统所有业务操作的基础,主要包括如下几个方面: 1景点信息入库。系统在使用前应该首先进行景点新增操作,将景点基本信息,包括名称、门票价格、旅游天数、景点地址、景点特色、景点图片等信息录入系统中。2景点信息管理。系统在该功能下默认输出所有景点的信息列表,供管理员管理,主要包括编辑和删除功能。二、美食管理:管理员在系统中管理景点的美食信息,主要包括如下两方面:1景点美食信息入库。系统在进行景点新增操作后应该进行景点美食新增操作,包括所属城市,名称、图片等信息录入系统中。2景点美食信息管理。系统在该功能下默认输出所有景点的美食列表,供管理员管理,主要包括编辑和删除功能。三、查看景点,该功能主要包括如下功能:1. 查看所有景点。用户可在此功能下查看所有景点的列表信息,包括名称和图片。四、景点信息查询,该功能主要包括以下两个方面:1.按照城市名称搜索,例如用户输入“西安市”,则会显示西安市内的所有景点列表。2. 按照景点名称搜索,例如用户输入“大明宫”,则会显示大明宫国家遗址公园的所有景点列表。五、查看景点详情用户选择任意景点后可看到景点的详情,包括景点名称、缩略图、详情图、门票价格、景点地址、景点特色等等。美食推荐,当用户浏览某景点详情信息时,系统将在页面下方自动推荐本地的特色美食信息,包括美食照片和美食名称。六、景点评论用户注册为会员后即可评论任意的景点,评论后即可在景点详情下方看到自己的评论。49第四章 系统设计4.1数据库的设计为了建立结构合理、冗余较小的数据库,设计数据库时必须遵循一些规则。在关系型数据库里这种规则我们称为范式。范式是符合某种设计要求的总结。想设计出一个结构合理的关系型数据库,必须要满足一定的范式。在实际开发中最为常见的设计范式有三个:1.第一范式就是(确保每列保持原子性)2.第二范式就是(确保表中的每列都和主键相关)3.第三范式就是(确保每列都和主键列直接相关,而不是间接相关)根据以上对旅游网站系统的需求分析以及数据库范式的设计要求,进行数据库关系的设计如下:4.2建立数据库根据设计的数据库设计数据库。管理员(admin)表,如表4-1所示:表4-1序号字段名称字段类型大小允许为空最大长度备注1.idINT11自增编号102.nameINT10是10主键3.accountDATE12是124.passwordDOUBLE100是100用户信息表表(user)表,如表4-2所示:表4-2序号字段名称字段类型大小允许为空最大长度备注1.idINT11自增编号11主键2.AccountVARCHAR50是503.passwordVARCHAR11是11景点信息表(item)表,如表4-3所示:表4-3序号字段名称字段类型大小允许为空最大长度备注1.idINT20否20主键2.NameVARCHAR20否203.addressVARCHAR20是204priceDATE20是205daysVARCHAR20是206introINT20是207featureINT20是208pathINT20是209cityVARCHAR20是20景点评论表(comment)表,如表4-4所示:表4-4序号字段名称字段类型大小允许为空最大长度备注1.idINT20自增编号40主键2.User_idDATE20是203.Item_idDATE20是204Record_timeVARCHAR50是505commentVARCHAR20是10美食表 (food)表,如表4-5所示:表4-5序号字段名称字段类型大小允许为空最大长度备注1.idINT 50是50主键2.nameVARCHAR40是403Item_id4.3系统功能设计4.3.1登录设计 用户浏览旅游网站的流程图如图4-1所示:图4-14.3.2管理员功能设计管理员可以进行景点管理和美食管理,结构图如图4-2所示。图4-24.3.3游客功能设计结构图如图4.4所示:图4-4第五章 系统的实现5.1登录功能的实现系统登录功能界面如下图所示,用户只需输入姓名、密码即可,点击登录后,程序会自动查询用户表,并自动做出角色判断,使用户登录更加简单方便。界面采用HTML5验证表单,如图5-1所示。图5-1主要代码如下: $info 5.2景点管理图5-2主要代码如下:RequestMapping(/createItem)public ModelAndView createItem() ModelAndView mav = new ModelAndView();mav.setViewName(admin/createItem);return mav;RequestMapping(/saveItem)public ModelAndView saveItem(Item item) itemService.saveEntity(item);ModelAndView mav = new ModelAndView();mav.setViewName(admin/createItem);return mav;RequestMapping(/searchItem)public ModelAndView searchItem() ModelAndView mav = new ModelAndView();mav.addObject(items, itemService.getEntities(Item.class);mav.setViewName(admin/searchItem);return mav;RequestMapping(/updateItem/id)public ModelAndView updateItem(PathVariable(id) Integer id) ModelAndView mav = new ModelAndView();mav.addObject(item, itemService.getEntityById(Item.class, id);mav.setViewName(admin/updateItem);return mav;RequestMapping(/editItem/id)public ModelAndView editItem(PathVariable(id) Integer id, Item item) Item model = itemService.getEntityById(Item.class, id);model.setName(item.getName();model.setAddress(item.getAddress();model.setPrice(item.getPrice();model.setDays(item.getDays();model.setFeature(item.getFeature();model.setIntro(item.getIntro();model.setCity(item.getCity(); itemService.updateEntity(model);return new ModelAndView(redirect:/searchItem.html); RequestMapping(/deleteItem/id)public ModelAndView deleteItem(PathVariable(id) Integer id) Item model = itemService.getEntityById(Item.class, id);itemService.deleteEntity(model);return new ModelAndView(redirect:/searchItem.html); RequestMapping(/saveItemFile/id)public ModelAndView saveItemFile(RequestParam(file) MultipartFile multipartFile, HttpSession session, PathVariable(id) Integer id, HttpServletRequest request) throws IllegalStateException, IOException String fileName = System.currentTimeMillis()+getExtensionName(multipartFile.getOriginalFilename();String fileDir = request.getRealPath(/) + images/ + fileName;System.out.println(fileDir);multipartFile.transferTo(new File(fileDir);Item item =

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论