ssm基于SSM的在线预约导游系统

收藏关注不迷路,源码文章末


前言

  人类现已迈入二十一世纪,科学技术日新月异,经济、资讯等各方面都有了非常大的进步,尤其是资讯与网络技术的飞速发展,对政治、经济、军事、文化等各方面都有了极大的影响。
利用电脑网络的这些便利,发展一套在线预约导游系统,将会给人们生活带来更多方便,而在经济效能上,也必然会有很大的方便!这样可以节省大量的时间和金钱。该系统主要完成了个人信息修改,对系统首页、个人中心、用户管理、导游管理、旅游心得管理、旅游景点管理、旅游线路管理、预约订单管理、系统管理等功能进行管理。方便了管理员随时随地,只要电脑联网,就能对在线预约导游进行管理。同时,用户还可以方便快捷查询旅游心得信息。
本篇论文对在线预约导游系统的需求分析、功能设计、系统设计进行了较为详尽的阐述,并对系统的整体设计进行了阐述,并对各功能的实现和主要功能进行了说明,并附上了相应的操作界面图。

关键词:在线预约导游; SSM框架;

一、项目介绍

  在项目开发中,需求分析是进行项目设计和实施的先决条件,也是基础。开发者应全面理解和全面分析,并按照使用者的要求,对其进行细致的工作,并具体说明需要完成的工作。在此阶段,系统如何完成工作是不重要的,你只需确认系统正在执行什么工作就可以了。
只要确定该工作是什么,就可以知道该系统是怎么工作的。在线预约导游系统的用户是管理员、用户和导游三个角色,为了满足现代社会对环保和节约的需要,将传统的纸质文档通过计算机输入计算机并以电子文档的方式显示出来。在线预约导游要负责许多方面的工作,因此,要建立一个简单、直观的查询渠道,并设定特定的存取权限,以保证在线预约导游工作的顺畅和高效。此外,要实现对用户的直接管理,便于用户的个人信息的集中存储与管理。
用户个人资料的查询和修改,将会对所有用户的个人资料进行增、删、改、查:第一,使用者输入用户名和密码,将会进行存在性与及耦合性检查,并于使用者登入系统时,进行身份验证,以避免因非使用者操作或其它违规行为而造成的非法登录行为;第二,进入该界面后,可以查询、更改自己的信息。
后台管理用户信息:第一、在系统的后台,管理员可以对用户和导游的个人资料进行全面的管理,如增添、修改、删除、查询等。
系统的运行过程:通过对在线预约导游管理体系的分析和对比,并结合实际情况提出了一些建议。
采用面向对象的思维方式,以符合实际的功能与性能要求,并进行了创新。为了提升在线预约导游管理的自动化和友善性的在线预约导游系统。
本文提出了一种基于面向对象的思想方法,以适应系统的实际功能与性能要求。为了使在线预约导游管理更具自动化和亲和力,在对在线预约导游进行简单的需求分析之后,将其分为三大功能模块,分别为管理员、用户和导游。其用例如下:
在这里插入图片描述

图3-1 管理员用例图
在这里插入图片描述

图3-2 导游用例图
在这里插入图片描述

图3-3 用户用例图

二、开发环境

开发语言:Java
框架:ssm
JDK版本:JDK1.8
服务器:tomcat7
数据库:mysql
数据库工具:Navicat11
开发软件:eclipse/myeclipse/idea
Maven包:Maven
————————————————

三、功能介绍

  
根据上文中对用户需求的一系列综合细致的分析,针对本在线预约导游系统,得到一个如图4-1所示的宏观的总体功能结构图。
在这里插入图片描述

图4-1 系统功能结构图

四、核心代码

部分代码:

package com.example.controller;

import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.SecureUtil;
import com.example.common.Result;
import com.example.common.ResultCode;
import com.example.entity.Caiwu;
import com.example.exception.CustomException;
import com.example.service.CaiwuService;
import com.example.utils.MapWrapperUtils;
import com.example.utils.jwt.JwtUtil;
import com.example.vo.CaiwuVo;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@RestController
@RequestMapping(value = "/caiwu")
public class CaiwuController {

    @Resource
    private CaiwuService caiwuService;

    @PostMapping
    public Result<Caiwu> add(@RequestBody CaiwuVo caiwu) {
        caiwuService.add(caiwu);
           return Result.success(caiwu);
    }
	
	

    @PostMapping("/deleteList")
    public Result<Caiwu> deleteList(@RequestBody CaiwuVo caiwu) {
        caiwuService.deleteList(caiwu.getList());
        return Result.success();
    }

    @DeleteMapping("/{id}")
    public Result delete(@PathVariable Long id) {
        caiwuService.delete(id);
        return Result.success();
    }

    @PutMapping
    public Result update(@RequestBody CaiwuVo caiwu) {
        caiwuService.update(caiwu);
        return Result.success();
    }

    @GetMapping("/{id}")
    public Result<Caiwu> detail(@PathVariable Integer id) {
        Caiwu caiwu = caiwuService.findById(id);
        return Result.success(caiwu);
    }

    @GetMapping
    public Result<List<Caiwu>> all() {
        return Result.success(caiwuService.list());
    }

    @PostMapping("/page")
    public Result<CaiwuVo> page(@RequestBody CaiwuVo caiwuVo) {
        return Result.success(caiwuService.findPage(caiwuVo));
    }
	    @PostMapping("/login")
    public Result login(@RequestBody Caiwu caiwu, HttpServletRequest request) {
        if (StrUtil.isBlank(caiwu.getZhanghao()) || StrUtil.isBlank(caiwu.getMima())) {
            throw new CustomException(ResultCode.PARAM_LOST_ERROR);
        }
        Caiwu login = caiwuService.login(caiwu);
//        if(!login.getStatus()){
//            return Result.error("1001","状态限制,无法登录系统");
//        }
        if(login != null) {
            HashMap hashMap = new HashMap();
            hashMap.put("user", login);
            Map<String, Object> map = MapWrapperUtils.builder(MapWrapperUtils.KEY_USER_ID,caiwu.getId());
            String token = JwtUtil.creatToken(map);
            hashMap.put("token", token);
            return Result.success(hashMap);
        }else {
            return Result.error();
        }
    }
    @PutMapping("/updatePassword")
    public Result updatePassword(@RequestBody Caiwu info, HttpServletRequest request) {
        Caiwu caiwu = caiwuService.findById(info.getId());
        String oldPassword = SecureUtil.md5(info.getMima());
        if (!oldPassword.equals(caiwu.getMima())) {
            return Result.error(ResultCode.PARAM_PASSWORD_ERROR.code, ResultCode.PARAM_PASSWORD_ERROR.msg);
        }
        info.setMima(SecureUtil.md5(info.getNewPassword()));
        Caiwu caiwu1 = new Caiwu();
        BeanUtils.copyProperties(info, caiwu1);
        caiwuService.update(caiwu1);
        return Result.success();
    }
}

五、效果图

请添加图片描述

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

六、文章目录

目 录
第一章 绪 论 1
1.1研究背景 1
1.2研究目的及意义 1
1.3研究方法 2
第二章 开发平台及环境简介 3
2.1java技术 3
2.2 Ssm框架介绍 3
2.3 MySQL数据库 4
2.4 B/S体系结构介绍 4
第三章 系统分析 5
3.1可行性分析 5
3.1.1技术可行性 5
3.1.2经济可行性 5
3.1.3操作可行性 5
3.2需求分析 5
3.3系统流程分析 7
3.3.1 登录流程 7
3.3.2系统操作流程 8
第四章 系统设计 10
4.1总体功能设计 10
4.2 数据库E-R图设计 11
4.3数据库的表的设计与开发 13
第五章 系统运行 23
5.1前台功能实现 23
5.2后台功能实现 26
5.2.1管理员模块实现 27
5.2.2导游模块实现 30
5.2.3用户模块实现 30
第六章 系统测试 32
6.1 系统测试运行环境 32
6.2 系统测试 32
6.3 测试运行记录 33
6.4系统运行与维护 33
结 论 35
参考文献 36
致 谢 37

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

QQ1039692211

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值