基于JavaWeb和Mysql的旅游信息管理系统设计与实现

基于JavaWeb和Mysql的旅游信息管理系统设计与实现 摘 要 经济在发展,生产总值GDP也会往上跑,生活质量也会上升一个等级,也是因为这一个原因

本文包含相关资料包-----> 点击直达获取<-------

基于JavaWeb和Mysql的旅游信息管理系统设计与实现

摘 要

经济在发展,生产总值GDP也会往上跑,生活质量也会上升一个等级,也是因为这一个原因,人们可以选择各种各样的方式去丰富自己的生活,旅游当然是里面不可或缺的一员。现在的人们都喜欢旅游并且把它当做是一种乐趣,这是一种很理想的放松自己的生活方式。但是在火车站买票会造成时间上的一定损失以及各种的不方便,加上对各个地方景点信息的不熟悉,导致在这一方面会浪费太多的时间。现在互联网的发展是非常迅速的,基本上贯彻到了我们生活的各个角落,因而一个能够线上购票的旅游系统是十分需要的。

旅游信息管理系统是用JAVA语言开发的,运用了Mysql数据库,前端页面使用了JSP+JavaScript+CSS进行设计。通过SSM框架,对JSP页面进行动态设计,保证了它的可维护性。

关键词 :JAVA;旅游;互联网;SSM

1 绪论

1.1 设计背景

经济的发展速度越来越快,生活水平也跟着提了上去,我们可以选择我们所喜欢的方式去享受生活。旅游是这个时代背景下享受生活的不可或缺的代名词,人们需要旅游这一种休闲方式去完全的放松自己。在信息快速发展的互联网信息化时代,我们不能在出发前才去询问一切的相关出行信息,这是非常耗费时间的一种做法。旅游业的兴起带来的是游客的增多,这也会导致管理者的工作量加重,不仅浪费我们的人力物力和时间,效率也非常的低下。因此需要一个旅游信息管理系统来解决这个问题,可以快速高效的了解所要旅行的目的地的信息,节约了时间,提高了效率。

1.2 设计意义

通过本系统的开发,用户可以进入网站首页,注册并登陆了解相关旅游信息,也可以在线购票。为了使用户能高效、方便、快捷地了解想要查询的信息,网页内有简单的查询地点的功能。同时,为了方便用户,此系统设置了网站内的新闻信息,获取信息更高效。管理者可以减少服务量并大大提高了工作效率,用户在此过程中也可以节省时间和大量的人力物力。这是一种大家都喜欢的双赢局面。

1.3 设计思路

  • 市场调研 :采取调查问卷、座谈会等方式,分析总结数据

  • 系统需求分析 :首先剖析系统所需要用到的一些基本功能,系统要实现的功能及可能遇到的难点难题

  • 概要设计 :使用Windows系统和选择Java编程语言来进行设计,同时进行数据库的设计

  • 详细设计 :首先划分系统模块、设计总体框图;然后分析模块需求、抽象出实现功能模块的各个类;再设计类的属性、方法;最后进行系统界面的设计、美化

  • 编码实现 :依照上一步的详细设计,编码写好项目功能

  • 系统测试总结 :对有的每一个功能都写出测试的例子,依据测试的例子进行每一项测试

  • 修复bug :当测试完成后,依据结果来修复各模块或大或小的bug

  • 毕业设计完善 :最后通过导师的指导,依据自身具体的毕业实习情况,对此次毕业设计项目进行完善和修改

2 需求分析

2.1 需求描述

本系统有权限管理,区分管理员和用户权限。拥有管理员权限的用户将具有有旅行社管理,评价管理,订单管理,用户管理,酒店管理,类目管理,团目管理全部功能。用户有可以注册登录,添加购物车和个人信息修改,订单管理,预订商品的功能。

2.2 用例建模

拥有管理员权限的用户将具有景点栏目、新闻栏目、网站用户、订单管理等一系列管理权限。管理员登录后可以对用户及景点的信息进行增删改查,对订单的管理。该功能的实例见图2-1:

用户有订单管理,购物车管理,修改个人基本信息的功能。该功能的实例见下图2-2:

2.3 用例描述

2.3.1 用户管理用例描述

  • 用户管理用例描述
  • 用例编号:CASE01
  • 用例名称:用户管理
  • 用例描述:系统管理员对用户的信息进行CRUD操作
  • 前置条件:系统管理员成功登录系统
  • 后置条件:系统管理员对用户模块进行了操作:添加用户信息,修改用户信息,删除用户信息或查看用户信息的操作
  • 活动步骤
    • 系统管理员登录系统
    • 系统以分页模式显示用户列表(每页10条)
    • 系统管理用户点中【新增用户】,弹出新建用户界面,管理权限用户输入用户信息,点中【提交保存】,系统对输入的信息进行验证,将合法的信息保存,然后显示新增后的用户列表
    • 拥有管理员权限的用户在用户列表中选中一个用户,点中【修改】,弹出用户修改界面,显示用户的当前信息,管理员更改用户信息,点击【提交修改】,系统对输入的信息进行验证,将合法的信息保存,然后显示修改后的用户列表
    • 系统管理员登录后可以看到所有用户的列表,可以查看所有用户的相关信息
    • 系统管理员在用户列表中选择某个用户,点击【删除】,弹出删除提示框,当用户确定删除后,系统将当前用户信息删除,并返回到用户列表,显示删除后的用户列表
  • 扩展点:管理员在登录时进入的是后台管理页面,拥有所有权限
  • 数据格式:用户信息(用户ID、用户名、姓名、用户电话、身份证号、地址)

  • 景点管理用例描述

  • 用例编号:CASE02
  • 用例名称:团目管理
  • 用例描述:系统管理员对团目的信息进行CRUD操作
  • 前置条件:系统管理员成功登录系统
  • 后置条件:系统管理员对景点管理模块进行了操作:添加团目信息,修改团目信息,删除团目信息或者查看团目信息
  • 活动步骤
    • 系统管理员登录系统
    • 系统以分页模式显示景点信息(每页10条)
    • 系统管理点击【添加旅游团目】按钮,弹出新增团目界面,系统管理员上传图片,输入相关信息,点击【提交保存】,系统对输入的信息进行验证,将合法的信息保存,然后显示新增后的景点列表
    • 系统管理员在景点列表中选择某个团目,点击【修改】,弹出团目信息修改界面,显示团目的当前信息,管理员更改景点信息,点击【提交修改】,系统对输入的信息进行验证,将合法的信息保存,然后显示修改后的景点列表
    • 系统管理员在团目列表中选择某个团目信息,点击标题,弹出团目信息界面,显示团目的当前信息
    • 系统管理员在团目信息列表中选择某个团目,点击【删除】,弹出删除提示框,点击【确定】,系统将当前团目信息删除,并返回到团目列表,显示删除后的团目列表
    • 可以进行【加入热销】和【移出热销】的操作,【加入新品】和【移出新品】的操作,显示在前端页面
  • 扩展点:只有管理员可以对团目信息进行增删改查等相关操作
  • 数据格式:景点信息(图片、名称、介绍、时间、价格、类目、旅行社)

3 系统设计

3.1 数据库设计

数据库的的设计主要从路线表出发,除了登录表所有的表都与之有所关联。因此其他各个表都应该创建与之关联的外键,建立外键约束。

  • 所有的主键都必须为 not null

  • 创建关联时明确好一对一,多对一,一对多的关系

3.1.1 概念模型

旅游信息系统概念模型图见下图3-1:

3.1.2 逻辑模型

旅游信息系统逻辑模型图见下图3-2:

3.1.3 物理模型

旅游信息系统物理模型图见下图3-3:

3.1.4 系统功能结构图

旅游信息系统功能结构图见下图3-4:

3.1.5 数据库脚本

sql /* Navicat MySQL Data Transfer Source Server : localMySQL Source Server Version : 50553 Source Host : localhost:3306 Source Database : yiyu Target Server Type : MYSQL Target Server Version : 50553 File Encoding : 65001 Date: 2018-06-15 08:47:29 */ SET FOREIGN_KEY_CHECKS=0; -- Table structure for admins DROP TABLE IF EXISTS `admins`; CREATE TABLE `admins` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(255) DEFAULT NULL, `password` varchar(255) DEFAULT NULL, `realname` varchar(255) DEFAULT NULL, `phone` varchar(20) DEFAULT NULL, `roleId` tinyint(4) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8; -- Records of admins -- Table structure for comment DROP TABLE IF EXISTS `comment`; CREATE TABLE `comment` ( `id` int(11) NOT NULL AUTO_INCREMENT, `time` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '评价时间', `text` varchar(2000) DEFAULT NULL COMMENT '评价内容', `status` tinyint(1) DEFAULT NULL COMMENT '评价状态(0-待评价,1已评价)', `orderId` int(11) DEFAULT NULL COMMENT '订单ID', `userId` int(11) DEFAULT NULL, `username` varchar(255) DEFAULT NULL, `checkStatus` tinyint(2) DEFAULT NULL COMMENT '审核状态', `adminId` int(11) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=31 DEFAULT CHARSET=utf8; -- Records of comment -- Table structure for goods DROP TABLE IF EXISTS `goods`; CREATE TABLE `goods` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) DEFAULT NULL COMMENT '名称', `cover` varchar(255) DEFAULT NULL COMMENT '封面', `image1` varchar(255) DEFAULT NULL COMMENT '细节图片1', `image2` varchar(255) DEFAULT NULL COMMENT '细节图片2', `price` int(11) DEFAULT NULL COMMENT '价格', `intro` varchar(255) DEFAULT NULL COMMENT '介绍', `stock` int(11) DEFAULT '0' COMMENT '库存', `type_id` int(11) DEFAULT NULL COMMENT '分类', `travel_id` int(11) DEFAULT NULL COMMENT '旅行社', `beginDate` date DEFAULT NULL, `endDate` date DEFAULT NULL, `adminId` int(11) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=25 DEFAULT CHARSET=utf8; -- Records of goods -- Table structure for hotel DROP TABLE IF EXISTS `hotel`; CREATE TABLE `hotel` ( `id` int(10) NOT NULL AUTO_INCREMENT, `hotelName` varchar(255) DEFAULT NULL, `hotelAddress` varchar(255) DEFAULT NULL, `hotelPhone` varchar(25) DEFAULT NULL, `hotelRemark` varchar(10000) DEFAULT NULL, `price` int(11) DEFAULT NULL, `image` varchar(255) DEFAULT NULL, `stock` int(11) DEFAULT NULL COMMENT '人数', `adminId` int(11) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8; -- Records of hotel -- Table structure for items DROP TABLE IF EXISTS `items`; CREATE TABLE `items` ( `id` int(11) NOT NULL AUTO_INCREMENT, `price` int(11) DEFAULT NULL COMMENT '价格', `amount` int(11) DEFAULT NULL COMMENT '数量', `order_id` int(11) DEFAULT NULL COMMENT '订单id', `good_id` int(11) DEFAULT NULL COMMENT '团目id', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=42 DEFAULT CHARSET=utf8; -- Records of items -- Table structure for itemshotel DROP TABLE IF EXISTS `itemshotel`; CREATE TABLE `itemshotel` ( `id` int(11) NOT NULL AUTO_INCREMENT, `price` int(11) DEFAULT NULL COMMENT '购买时价格', `amount` int(11) DEFAULT NULL COMMENT '购买数量', `order_id` int(11) DEFAULT NULL COMMENT '订单id', `hotel_id` int(11) DEFAULT NULL COMMENT '团目id', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=15 DEFAULT CHARSET=utf8; -- Records of itemshotel -- Table structure for orders DROP TABLE IF EXISTS `orders`; CREATE TABLE `orders` ( `id` int(11) NOT NULL AUTO_INCREMENT, `total` int(11) DEFAULT NULL COMMENT '总价', `amount` int(11) DEFAULT NULL COMMENT '总数', `status` tinyint(4) DEFAULT '1' COMMENT '订单状态(1未付款/2已付款/3已发货/4已完成)', `paytype` tinyint(4) DEFAULT '0' COMMENT '支付方式 (1微信/2支付宝/3货到付款)', `name` varchar(255) DEFAULT NULL COMMENT '收货人', `phone` varchar(255) DEFAULT NULL COMMENT '收货电话', `address` varchar(255) DEFAULT NULL COMMENT '收货地址', `systime` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '下单时间', `user_id` int(11) DEFAULT NULL COMMENT '下单用户', `commentStatus` tinyint(2) DEFAULT NULL COMMENT '1未评价/2已评价', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=51 DEFAULT CHARSET=utf8; -- Records of orders -- Table structure for role DROP TABLE IF EXISTS `role`; CREATE TABLE `role` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8; -- Records of role -- Table structure for tops DROP TABLE IF EXISTS `tops`; CREATE TABLE `tops` ( `id` int(11) NOT NULL AUTO_INCREMENT, `type` tinyint(4) DEFAULT NULL COMMENT '推荐类型(1条幅/2大图/3小图)', `good_id` int(11) DEFAULT NULL COMMENT '项目id', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=27 DEFAULT CHARSET=utf8 COMMENT='首页推荐商品'; -- Records of tops -- Table structure for travel DROP TABLE IF EXISTS `travel`; CREATE TABLE `travel` ( `id` int(10) NOT NULL AUTO_INCREMENT, `travelAddress` varchar(255) DEFAULT NULL, `travelCode` varchar(50) DEFAULT NULL COMMENT '邮编', `travelName` varchar(255) DEFAULT NULL, `travelPhone` varchar(20) DEFAULT NULL, `travelRemark` varchar(10000) DEFAULT NULL, `adminId` int(11) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=46 DEFAULT CHARSET=utf8; -- Records of travel -- Table structure for types DROP TABLE IF EXISTS `types`; CREATE TABLE `types` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(50) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8; -- Records of types -- Table structure for users DROP TABLE IF EXISTS `users`; CREATE TABLE `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(255) DEFAULT NULL COMMENT '用户名', `password` varchar(255) DEFAULT NULL COMMENT '密码', `name` varchar(255) DEFAULT NULL COMMENT '收货人', `phone` varchar(25) DEFAULT NULL COMMENT '收货电话', `address` varchar(255) DEFAULT NULL COMMENT '收货地址', `idCard` varchar(255) DEFAULT NULL, `register` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, `sex` tinyint(1) DEFAULT NULL, `email` varchar(255) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=22 DEFAULT CHARSET=utf8; -- Records of users

3.2 系统架构设计

采用MVP的设计模式,使用JSP页面实现视图。com.controller存放所有的Action类,起到控制器的效果;com.dao进行数据库操作;com.entity存放所有的实体类;com.mapper存放数据库语句;com.Service对业务逻辑进行处理;com.util为公共类。

4 产品实现

4.1 管理员登录模块实现

4.1.1 界面设计

管理员登录界面

管理员登录成功页面

4.1.2 功能实现

下面是管理员实现登录的Controller层、DAO层、Service层主要代码图:

4.2 用户登录模块实现

4.2.1 界面设计

用户登录界面

用户登录成功界面

4.2.2 功能实现

下面是用户登录的Controller层、DAO层、Service层主要代码图:

5 产品测试

5.1 测试方法与策略

对系统采用实际操作的方法,对系统的每个功能都进行了增删改查的相关操作,查看是否出现了什么问题,再对系统进行优化和改善。

5.2 管理员模块测试

5.3 用户模块测试

6 结论

6.1 毕业设计成果特点

旅游信息管理系统的设计思路较为清晰,页面的设计也是非常人性化,对大众比较友好,操作的话会非常方便快捷。

在这个互联网发展迅速的信息化时代,效率就显得非常重要。而旅游信息管理系统的出现也是从一定程度上解决了这个问题。让数据拥有时效性和及时性,同时也节约了人力和物力,降低了成本。

6.2 设计成果的实用价值或应用前景

此系统是为旅游信息服务而进行开发设计的,设计的主要思路为:让用户能注册登录,而且能够进行购买预订等的操作。系统区分权限管理,有系统管理员和用户两个权限。当管理员登录时,能够对用户和类目的进行操作管理,也能够对订单及酒店进行管理等操作。用户使用本系统进行登录,可以预订团目 ,旅行社和酒店等操作。本系统基于SSM,界面整洁人性化,非常方便于广大用户的使用。

6.3 不足之处或遗留未予解决的问题

本次开发遇到了许许多多或大或小的Bug,基本上都是自己通过多次的设置断点进行调试,不能解决的话用搜索引擎以及博客系统进行解决,解决不了的时候会请教老师和同学。在这一段解决Bug的过程中也是收获了不少东西。

虽然遇到了不少的Bug,但是基本上都解决了。本系统的功能比较完好,用户的基本需求也能够满足,但由于自己的技术水平的局限性,当前的系统依然缺乏一些东西。自然而然的,本系统也一定还存在着许多未知的问题等着去解决。这些局限性在日后会慢慢解决,逐渐争取让客户满意。

参考文献

[1] 孙飞显,孙俊玲,马杰.《MySQL数据实用教程》.清华大学出版社.2015年11月第一版.

[2] 谢英辉.《HTML+CSS+JavaScript网页客户端程序设计》.电子工业出版社,2014年1月.

[3] 崔敬东,徐雷.《Java程序设计基础教程》.清华大学出版社,2016年1月.

[4] 罗谦. 试谈Java语言的Mysql数据库连接实现与处理[J]. 信息科学,2014(8):105.

[5] 秦鑫. 旅游管理网站系统的设计与实现[D]. 大连:大连理工大学,2013.

[6] 李洋. SSM框架在Web应用开发中的设计与实现[J]. 计算机技术与发展,2016,26(12):190-194.

[7] 肖祥林. 基于SSM的毕业设计管理系统设计与实现[J]. 电子科技,2016,29(10):115-117.

[8] 杨桂才. 在线商品销售系统的设计与实现[D]. 云南大学, 2015.

[9] 付岩. 旅游信息管理系统[D]. 内蒙古大学, 2009.

[10] 丁圣. 面向LED显示屏的新农村综合信息服务系统的分析与设计[D]. 云南大学, 2014.

[11] 张姝. 重点项目工程管理系统的设计与实现[D]. 西安电子科技大学, 2017.

[12] 冷若雁. 安顺学院工资管理信息系统分析与设计[D]. 云南大学, 2015.

[13] 马捷 李俊民. 地理信息系统在区域旅游中的应用[D]. 安阳师范学院学报, 2003.

[14] 张跃辉. 基于RBAC通用授权管理系统的研究和实现[D]. 电子科技大学, 2012.

[15] 庄国贤. 电力调度监控信号事项分析系统的分析与设计[D]. 云南大学, 2014.

[16] 方辉. 基于ASPNET的在线学位论文评审系统设计与实现[D]. 广西师范大学, 2017.

[17] 杨婧媛. 统一用户信息管理服务框架的设计与实现[D]. 北京邮电大学, 2015.

[18] 刘铭昊. 旅游信息管理系统与旅游网站设计[D]. 天津大学, 2017.

参考文献

  • 酒店资源管理预订系统的设计与实现(南京大学·朱世杰)
  • 基于J2EE的旅游信息服务系统(吉林大学·杨桂霞)
  • 基于B/S架构的酒店管理系统的设计与实现(电子科技大学·耿立博)
  • 山西省旅游集散中心信息管理系统设计与实现(大连理工大学·郭凯)
  • 基于Web Service的旅游管理系统的设计与实现(北京邮电大学·李琳)
  • 云麓山庄酒店管理系统设计与实现(电子科技大学·郑可)
  • 旅游资源与线路管理系统的设计与实现(山东大学·孙杰)
  • 旅游管理系统的设计与实现(东北大学·王宇慧)
  • 旅行社散客安排系统的设计与开发(电子科技大学·郭红梅)
  • 基于Java Web的小型酒店管理系统(大连理工大学·徐耀荣)
  • 旅游电子商务系统的设计与实现(东南大学·杨俊)
  • 基于.NET的在线旅游产品系统设计与应用(吉林大学·关子南)
  • 基于Jave ME的旅游服务预订系统的设计与实现(中国海洋大学·房玮)
  • 基于SaaS模式的旅游服务系统的设计与实现(复旦大学·李霞)
  • 旅行社散客安排系统的设计与开发(电子科技大学·郭红梅)

本文内容包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主题。发布者:源码项目助手 ,原文地址:https://m.bishedaima.com/yuanma/35313.html

相关推荐

发表回复

登录后才能评论